1. 22 Apr, 2002 18 commits
    • Rusty Russell's avatar
      [PATCH] fcntl returns wrong error code (Updated) · 837ed355
      Rusty Russell authored
      Christopher Yeoh <cyeoh@samba.org>: Re: fcntl returns wrong error code (Updated):
        At 2002/3/22 00:58+1100  Christopher Yeoh writes:
        > btw Stephen Rothwell pointed out that there is a much neater way to
        > achieve the same change. I'll post a new patch in the morning.
      
        This is the updated patch.
      
      
      (Included in 2.4)
      837ed355
    • Rusty Russell's avatar
      [PATCH] serial.c ISAPNP fix: · e73512e4
      Rusty Russell authored
      Andrey Panin <pazke@orbita1.ru>: serial.c ISAPNP fix:
        Thist patch fixes buglet which disables ISAPNP support in serial driver.
        __ISAPNP__ conditional symbol is used before isapnp.h is included.
      
      
      (Included in 2.2)
      (Included in 2.4)
      e73512e4
    • Rusty Russell's avatar
      [PATCH] drivers_net_sis900.c: misiing __devinit · f669f096
      Rusty Russell authored
      Andrey Panin <pazke@orbita1.ru>: drivers_net_sis900.c: misiing __devinit:
        This patch adds missing __devinit modifier for read_eeprom() function.
        Patch against 2.5.8. Compiles, but untested.
      f669f096
    • Rusty Russell's avatar
      [PATCH] drivers_net_eepro100: missing __devinit: · e57d8fac
      Rusty Russell authored
      Andrey Panin <pazke@orbita1.ru>: drivers_net_eepro100: missing __devinit:
        This patch adds missing __devinit modifiers for speedo_found1() and
        do_eeprom_cmd() functions. Patch against 2.5.8. Compiles, but untested.
      e57d8fac
    • Rusty Russell's avatar
      [PATCH] fix a warning in i386_pci-pc.c · 8a8d8171
      Rusty Russell authored
      Andrew Morton <akpm@zip.com.au>: fix a warning in i386_pci-pc.c:
      8a8d8171
    • Rusty Russell's avatar
      [PATCH] drivers_net_dl2k.c: missing __devinit's · ca3337ce
      Rusty Russell authored
      Andrey Panin <pazke@orbita1.ru>: drivers_net_dl2k.c: missing __devinit's:
        This patch adds missing __devinit modifiers for read_eeprom() and
        parse_eeprom() functions. Patch against 2.5.8. Compiles, but untested.
      ca3337ce
    • Alexander Viro's avatar
      [PATCH] (5/5) sane procfs/dcache interaction · 0be49a5c
      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.
      0be49a5c
    • Alexander Viro's avatar
      [PATCH] (4/5) sane procfs/dcache interaction · b991a4bf
      Alexander Viro authored
       - preparation for sane policy for /proc/<pid>/fd/* - don't store
         struct file * in these inodes anymore.
      b991a4bf
    • Alexander Viro's avatar
      [PATCH] (3/5) sane procfs/dcache interaction · 00306333
      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.
      00306333
    • Alexander Viro's avatar
      [PATCH] (2/5) sane procfs/dcache interaction · 981936da
      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.
      981936da
    • Alexander Viro's avatar
      [PATCH] (1/5) sane procfs/dcache interaction · ea306a2a
      Alexander Viro authored
       - take unhash_process() into sched.c, move zeroing ->pid into it (and
         under tasklist_lock)
      ea306a2a
    • Alexander Viro's avatar
      [PATCH] buffer_head leak · 87f77892
      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.
      87f77892
    • Alexander Viro's avatar
      [PATCH] (6/6) alpha fixes · 9d129978
      Alexander Viro authored
       - fixed off-by-PAGE_OFFSET in populate_pmd() (alpha, again)
      9d129978
    • Alexander Viro's avatar
      [PATCH] (5/6) alpha fixes · 0c579f1d
      Alexander Viro authored
       - alpha/mm/init.c forgot to set max_pfn
      0c579f1d
    • Alexander Viro's avatar
      [PATCH] (4/6) alpha fixes · 8e073e50
      Alexander Viro authored
       - (dumb) default_idle() provided (alpha)
      8e073e50
    • Alexander Viro's avatar
      [PATCH] (3/6) alpha fixes · 4b6cd7a7
      Alexander Viro authored
       - s/p_pptr/parent/, s/p_opptr/real_parent/ done for alpha
      4b6cd7a7
    • Alexander Viro's avatar
      [PATCH] (2/6) alpha fixes · 80e01aaa
      Alexander Viro authored
       - missing defines/fields/includes for alpha (accumulated since 2.5.0)
      80e01aaa
    • Alexander Viro's avatar
      [PATCH] (1/6) alpha fixes · 1f2b984d
      Alexander Viro authored
       - bogus return value type for ->open() and ->release() on nfsd
         (generic, caught on alpha since there ssize_t != int)
      1f2b984d
  2. 21 Apr, 2002 11 commits
  3. 20 Apr, 2002 4 commits
    • Kai Germaschewski's avatar
      Merge tp1.ruhr-uni-bochum.de:/home/kai/kernel/v2.5/linus-2.5.vm · c6b95c56
      Kai Germaschewski authored
      into tp1.ruhr-uni-bochum.de:/home/kai/kernel/v2.5/linux-2.5.make
      c6b95c56
    • Andi Kleen's avatar
      [PATCH] x86-64 architecture specific sync for 2.5.8 · 88e4bc32
      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.
      88e4bc32
    • Andi Kleen's avatar
      [PATCH] Fix console initialization deadlock for x86-64 · 61aacaa2
      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.
      61aacaa2
    • Andi Kleen's avatar
      [PATCH] autofs fix for x86-64 · b817df50
      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
      b817df50
  4. 19 Apr, 2002 5 commits
    • Guennadi Liakhovetski's avatar
      [PATCH] 1096/3: trizeps PCMCIA support · fd014d52
      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.
      fd014d52
    • Brian Gerst's avatar
      [PATCH] SSE related security hole · af9086a7
      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. 
      af9086a7
    • Jens Axboe's avatar
      [PATCH] ide updates · 0540fcdf
      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.
      0540fcdf
    • Kai Germaschewski's avatar
      Fix drivers/scsi/aic7xxx/Makefile for building a modular aic7xxx driver · 2b31db8a
      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).
      2b31db8a
    • Kai Germaschewski's avatar
      Fix compiling sym53c8xx_2 into the kernel. · 386c0ee1
      Kai Germaschewski authored
      (The O_TARGET is used only internally when linking, the name of the 
      module is unchanged).
      386c0ee1
  5. 18 Apr, 2002 2 commits
    • Linus Torvalds's avatar
      3980957c
    • Erich Focht's avatar
      [PATCH] more migration thread cleanups · b85f47ad
      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.
      b85f47ad