- 22 Apr, 2002 12 commits
-
-
Alexander Viro authored
- sane retention policy for /proc/<pid>/fd/* - ->d_revalidate() says "kill it" if descriptor is not opened anymore (in addition to checks for task being dead) and we allow dentries of /proc/<pid>/fd/<n> to stay around.
-
Alexander Viro authored
- preparation for sane policy for /proc/<pid>/fd/* - don't store struct file * in these inodes anymore.
-
Alexander Viro authored
- sane dentry retention. Namely, we don't kill /proc/<pid> dentries at the first opportunity (as the current tree does). Instead we do the following: * ->d_delete() kills it only if process is already dead. * all ->lookup() in proc/base.c end with checking if process is still alive and unhash if it isn't. * proc_pid_lookup() (lookup for /proc/<pid>) caches reference to dentry in task_struct. It's _not_ counted in ->d_count. * ->d_iput() resets said reference to NULL. * release_task() (burying a zombie) checks if there is a cached reference and if there is - shrinks the subtree. * tasklist_lock is used for exclusion. That way we are guaranteed that after release_task() all dentries in /proc/<pid> will go away as soon as possible; OTOH, before release_task() we have normal retention policy - they go away under memory pressure with the same rules as for dentries on any other fs.
-
Alexander Viro authored
- new helper in fs/proc/base.c - name_to_int(dentry) returns ~0U if name doesn't match 0|[1-9][0-9]* or is too large. Otherwise it returns numeric value of name. proc_pid_lookup() and proc_lookupfd() converted.
-
Alexander Viro authored
- take unhash_process() into sched.c, move zeroing ->pid into it (and under tasklist_lock)
-
Alexander Viro authored
Fix buffer-head leak on truncate race. The reason why it hadn't been triggered left right and center is that we step on that path only when partial truncate blows away an indirect block shared between truncated and remaining areas _and_ races with ext2_get_block() in the beginning of said area. IOW, we need * indirect block with hole in the beginning * get_block starting to read that block * truncate killing everything past the hole (and thus freeing indirect block in question) * get_block completing the read and noticing that block is actually gone. OK... IMO we should do that brelse() outside of the loop.
-
Alexander Viro authored
- fixed off-by-PAGE_OFFSET in populate_pmd() (alpha, again)
-
Alexander Viro authored
- alpha/mm/init.c forgot to set max_pfn
-
Alexander Viro authored
- (dumb) default_idle() provided (alpha)
-
Alexander Viro authored
- s/p_pptr/parent/, s/p_opptr/real_parent/ done for alpha
-
Alexander Viro authored
- missing defines/fields/includes for alpha (accumulated since 2.5.0)
-
Alexander Viro authored
- bogus return value type for ->open() and ->release() on nfsd (generic, caught on alpha since there ssize_t != int)
-
- 21 Apr, 2002 11 commits
-
-
-
Russell King authored
into flint.arm.linux.org.uk:/usr/src/linux-bk-2.5/linux-2.5-rmk
-
Russell King authored
Make cpu type message consistent with cache type message.
-
http://linux-isdn.bkbits.net/linux-2.5.isdnLinus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Kai Germaschewski authored
Make the PCMCIA client drivers depend on hisax.o, use the right CONFIG_ variable for hisax submodules, handle the case of built-in hisax, modular hisax submodules.
-
Kai Germaschewski authored
-
Kai Germaschewski authored
Remove the repeated information on what a module is.
-
Kai Germaschewski authored
-
Kai Germaschewski authored
-
Kai Germaschewski authored
-
Kai Germaschewski authored
into tp1.ruhr-uni-bochum.de:/home/kai/kernel/v2.5/linux-2.5.isdn
-
- 20 Apr, 2002 4 commits
-
-
Kai Germaschewski authored
into tp1.ruhr-uni-bochum.de:/home/kai/kernel/v2.5/linux-2.5.make
-
Andi Kleen authored
This patch brings 2.5.8 in sync with the x86-64 2.4 development tree again (excluding device drivers) It has lots of bug fixes and enhancements. It only touches architecture specific files. - Sync with 2.5.8 - SMP/APIC supported now. - Module loading works now. - Time keeping bugs fixed. - entry.S streamlined and some bugs fixed. - modify_ldt works now - mostly rewritten FPU support (including FXRSTOR for initial FPU initialization based on the initial state) - 32bit emulation enhanced and bugs fixed. - rewrote mm initialization and lots of cleanups in the page table handling __PAGE_OFFSET is now moved to 0x10000000000 and some vmalloc/ioremap problems have been fixed. They have an own PML4 slot now. - WCHAN reporting support for RIP (but not RSP) - Lots of various other bug fixes and cleanups. Currently broken: - ACPI - MTRR It needs some other bugfixes outside architecture specific code. I sent them all in separate mail.
-
Andi Kleen authored
When vt_init happens to run before the keyboard is initialized (the order is random because they're both different initcalls) then set_leds raises an not yet enabled tasklet. This causes an endless loop on the first schedule() call because the tasklet handling cannot handle raised but disabled tasklets. This patch just does not do set_leds in virtual terminal initialization to avoid that. It is done later anyways.
-
Andi Kleen authored
Minor patch for the x86-64 32bit emulation. Originally proposed by hpa and it makes autofs 32bit/64bit clean for x86-64
-
- 19 Apr, 2002 5 commits
-
-
Guennadi Liakhovetski authored
(a minor fix to the previous version - 1096/2) The enclosed patch includes trizeps-specific PCMCIA code. All modifications are enclosed in #ifdef CONFIG_SA1100_TRIZEPS #endif blocks or are linked as +sa1100_cs-objs- += sa1100_trizeps.o so, other platforms remain unaffected. The patch is built against 2.5.6-rmk1.
-
Brian Gerst authored
Initialize the saved FPU/XMM state in the task struct and fall through to restore_fpu() to make sure that all state is fully initialized. This means that old SSE/SSE2 information cannot ever leak into newly created processes.
-
Jens Axboe authored
- (tcq, general) Remove the 'attempt to keep queue full option'. It worked on some IBM models, but failed miserably on others. Also removes some uglies in ide_queue_commands() - (tcq0 Change default depth back to 32. - (general) Add isr for no-dataphase taskfile, like task_no_data_intr but doesn't complain about failure. This is handy for commands what we _know_ will fail, such as WIN_NOP. - (general) ide_cmd_type_parser() must set a handler to WIN_NOP... Otherwise we will just hang the ide system issuing a nop. - (general) HWGROUP(drive)->rq->special -> IDE_CUR_AR(drive) - (general) Have ide_raw_taskfile() copy back the taskfile after execution, otherwise we cannot use the info that ide_end_drive_cmd() puts in there. - (tcq) Use nIEN bit correctly in ide-tcq - (tcq) Small ide_tcq_wait_altstat() changes. Do initial 400ns delay (1us here), then 10us each successive run. - (tcq) Add beginning for 'nop auto poll' support check. - (tcq) Arm handler before GET_STAT() service check in ide_dma_queued_start, WD seemed to trigger interrupt before that. Makes WD Expert drives work with tcq.
-
Kai Germaschewski authored
Use the (well, one) standard way to build a multi-part module. Standard except for that we build aix7xxx_mod.o but then rename it at modules_install time (just as it was before).
-
Kai Germaschewski authored
(The O_TARGET is used only internally when linking, the name of the module is unchanged).
-
- 18 Apr, 2002 8 commits
-
-
Linus Torvalds authored
-
Erich Focht authored
I'm currently working on a node affine scheduler extension for NUMA machines and the load balancer behaves a bit different from the original. So after a few boot failures with those slowly booting 16 CPU IA64 machines I thought there must be a simpler solution than synchronizing and waiting for the load balancer: just let migration_CPU0 do what it is designed for. So my proposal is: - start all migration threads on CPU#0 - initialize migration_CPU0 (trivial, reliable, as it already is on the right CPU) - let all other migration threads use set_cpus_allowed() to get to the right place The only synchronization needed is the non-zero migration threads waiting for migration_CPU0 to start working, which it will, as it is already on the right CPU. This saves quite some lines of code. I first posted this to LKML on March 6th (BTW, the fix #1, too) and since then it was tested on several big NUMA platforms: 16 CPU NEC AzusA (IA64) (also known as HP rx....), up to 32 CPU SGI IA64, 16 CPU IBM NUMA-Q (IA32). No more lock-ups at boot since then. So I consider it working. There is another good reason for this approach: the integration of the CPU hotplug patch with the new scheduler becomes easier. One just needs to create the new migration thread, it will move itself to the right CPU without any additional magic (which you otherwise need because of the synchronizations which won't be there at hotplug). Kimi Suganuma in the neighboring cube is fiddling this out currently.
-
Linus Torvalds authored
-
Linus Torvalds authored
-
Robert Love authored
Attached is a patch that disables interrupts while holding the rq_lock. This is certainly needed to prevent a race against the timer tick, as Erich Focht pointed out.
-
François Romieu authored
- line ending white spaces squadron strikes back; - some fscked tabs are fixed. Nice after longs coding sessions.
-
François Romieu authored
- just say no to +/-1 arithmetic when not needed; - pot-pourri of misc cleanup; - *new*: support of boot-time parameters
-
François Romieu authored
- CD/CTS change notification; - more DEBUG/if (debug >...) conversion;
-