1. 10 Nov, 2002 4 commits
    • James Bottomley's avatar
      warn (and don't attach) if no error handling · e51e9039
      James Bottomley authored
      Add code to warn and not attach the host if it has no error handling.
      
      Allow attachment if the `scsi_ignore_no_error_handling' boot flag
      is set.
      
      This should allow us finally to rip out all the old error code.
      e51e9039
    • Douglas Gilbert's avatar
      scsi_mid_low_api.txt · ee8692cd
      Douglas Gilbert authored
      This patch against 2.5.46-bk3 is work in progress
      (since the interface is in flux). It dusts of some
      cobwebs, removes politically incorrect typedefs and
      describes slave_attach() and slave_detach(). It
      removes the revoke() description (per hch? changes).
      
      Is a section describing mid level functions provided
      for LLDDs (e.g. scsi_adjust_queue_depth() )
      warranted?
      ee8692cd
    • Douglas Gilbert's avatar
      scsi_debug 1.64 , remove detect(), "hotplug" hosts · 2eca25e4
      Douglas Gilbert authored
      This patch is against lk 2.5.46-bk3 which includes
      Christoph's work removing the requirement for
      detect() functions in LLDDs. He sent me an example
      for scsi_debug which I have built on with this patch.
      
      As threatened, this version includes a "scsi_debug_add_host"
      parameter. At kernel or module load time this is an absolute
      number (0..127 are allowable and 1 is the default). So:
           modprobe scsi_debug scsi_debug_num_devs=20 scsi_debug_add_host=0
      will result in no scsi_debug hosts (thus no devices) but
      the driver has 20 slots available for devices.
      
      Then a host can be introduced (simulated hotplug) by
           echo 1 > /sysfs/bus/scsi/drivers/scsi_debug/add_host
      This causes a scsi_debug host to appear and devices get
      found on it [14 in my system: 7 targets (0..6) each with
      2 luns (0..1)]. Another host hotplug can be simulated by
           echo 1 > /sysfs/bus/scsi/drivers/scsi_debug/add_host
      which results in another 6 devices being attached (for a
      total of 20 scsi_debug devices as dictated by the original
      scsi_debug_num_devs).
      
      That last (second) scsi_debug host can be removed by
           echo -1 > /sysfs/bus/scsi/drivers/scsi_debug/add_host
      and its 6 devices go. Another application of this "echo"
      removes the first host and all remaining devices.
      
      Seems to work fine.
      2eca25e4
    • Christoph Hellwig's avatar
  2. 09 Nov, 2002 1 commit
  3. 08 Nov, 2002 6 commits
    • Rusty Russell's avatar
      [PATCH] [Trivial Patch] scsi_register-008 · 966b5a0f
      Rusty Russell authored
      From:  Michael Still <mikal@stillhq.com>
      
      
        This patch has been generated as part of my scsi_register audit of the 2.5.45 kernel tree. scsi_register() can fail, returning a NULL pointer, and the failure case was not being handled here...
      966b5a0f
    • Rusty Russell's avatar
      [PATCH] [Trivial Patch] scsi_register-002 · 01c7129b
      Rusty Russell authored
      From:  Michael Still <mikal@stillhq.com>
      
      
        This patch has been generated as part of my scsi_register audit of the 2.5.45 kernel tree. scsi_register() can fail, returning a NULL pointer, and the failure case was not being handled here...
      01c7129b
    • Rusty Russell's avatar
      [PATCH] [Trivial Patch] scsi_register-006 · 792ad1ea
      Rusty Russell authored
      From:  Michael Still <mikal@stillhq.com>
      
      
        This patch has been generated as part of my scsi_register audit of the 2.5.45 kernel tree. scsi_register() can fail, returning a NULL pointer, and the failure case was not being handled here...
      792ad1ea
    • Rusty Russell's avatar
      [PATCH] [Trivial Patch] scsi_register-003-002 · 254bf2f5
      Rusty Russell authored
      From:  Michael Still <mikal@stillhq.com>
      
      
        Updated patches to scsi_register patches against the 2.5.45 tree
      254bf2f5
    • Rusty Russell's avatar
      [PATCH] [Trivial Patch] scsi_register-004 · ae24f9c0
      Rusty Russell authored
      From:  Michael Still <mikal@stillhq.com>
      
      
        This patch has been generated as part of my scsi_register audit of the 2.5.45 kernel tree. scsi_register() can fail, returning a NULL pointer, and the failure case was not being handled here...
      ae24f9c0
    • Rusty Russell's avatar
      [PATCH] [Trivial Patch] scsi_register-001-002 · 31bc9ebf
      Rusty Russell authored
      From:  Michael Still <mikal@stillhq.com>
      
      
        Updated patches to scsi_register patches against the 2.5.45 tree
      31bc9ebf
  4. 07 Nov, 2002 1 commit
  5. 06 Nov, 2002 28 commits
    • Christoph Hellwig's avatar
      [PATCH] get rid of ->detect for upper layer drivers · 4e5ba3ff
      Christoph Hellwig authored
      Okay, we're finally at the point where ->detect has become entirely
      superflous.  In sd, sr and st it does nothing but return different
      values that are ignored anyway, in sg it increments a variable
      that is never read (and thus removed in this patch aswell), only
      in osst it increments a variable that is actually checked for beeing
      non-zero.  But if it was zero we'd never reached that place anyway
      (same check in the beginning of osst_detect and osst_attach).
      
      This make the upper layer interface a lot nicer and avoids the
      race condition where a device is remove between detect and attach
      (which currently wouldn't matter anyway as we aren't doing anything
      in detect anymore)
      4e5ba3ff
    • James Bottomley's avatar
      [PATCH] add request prep functions to SCSI · 24e696ca
      James Bottomley authored
      This patch adds request prep functions to the mid-layer.  At the moment, its a single request prep function for all of SCSI.  I've altered the logic in scsi_request_fn so that we now do early preparation (this should improve throughput slightly in the untagged case with only a single command block).
      
      The prep function also cannot drop the queue lock, so the calling assumptions for scsi_init_io and the upper layer driver init_commands have changed to be that the lock is now held and they cannot drop it.  I think this means that we have no callers of scsi_init_io that aren't atomic, so perhaps I can just take the if out.
      
      I've hammered this in my usual set up, but other testers would be welcome.
      
      James
      24e696ca
    • Neil Brown's avatar
      [PATCH] Support latest NVRAM card from micromemory. · 90a8d4f3
      Neil Brown authored
      Just a new PCI ID (and get twice the MegaHz :-).
      90a8d4f3
    • Rob Weryk's avatar
      [PATCH] Make VT8653 work with AGP · 4327a6d9
      Rob Weryk authored
      This makes VT8653 (VIA Apollo Pro266T) work with AGP.  I had someone
      test it and verify it works.
      4327a6d9
    • Paul Mackerras's avatar
      [PATCH] Fix typo in sl82c105.c driver · f6120867
      Paul Mackerras authored
      This fixes a minor typo in sl82c105.c which stops it from compiling.
      f6120867
    • Paul Mackerras's avatar
      [PATCH] Update powermac IDE driver · 056cc252
      Paul Mackerras authored
      This updates the powermac IDE driver in 2.5 so it uses the 2.5 kernel
      interfaces and types rather than the 2.4 ones.  It also makes it use
      blk_rq_map_sg rather than its own code to set up scatter/gather lists in
      pmac_ide_build_sglist, and makes it use ide_lock instead of
      io_request_lock.
      056cc252
    • Paul Mackerras's avatar
      [PATCH] Update macserial driver · 594c9846
      Paul Mackerras authored
      This updates the macserial driver in 2.5 so it compiles and works.  The
      main changes are to use schedule_work instead of task queues and BHs.
      The patch also removes the wait_key method.
      
      I know we need to change macserial to use the new serial
      infrastructure.  I'm posting this patch in case it is useful to anyone
      trying to compile up a kernel for a powermac at the moment.
      594c9846
    • Davide Libenzi's avatar
      [PATCH] epoll bits 0.34 · 26ee92ea
      Davide Libenzi authored
       - Some constant adjusted
       - Comments added
       - Better hash initialization
       - Correct timeout setup
       - Added __KERNEL__ bypass to avoid userspace inclusion problems
       - Cleaned up locking
       - Function poll_init_wait() now calls poll_init_wait_ex()
       - Event return fix ( Jay Vosburgh )
       - Use <linux/hash.h> for the hash
      26ee92ea
    • Neil Brown's avatar
      [PATCH] kNFSd: Make sure svc_process releases response even on error. · aeb673ca
      Neil Brown authored
      If a rpc operation indicates that response should
      be dropped (e.g. kmalloc failure) we must still
      call pc_release to release anything it may have allocated.
      aeb673ca
    • Neil Brown's avatar
      [PATCH] kNFSd: Convert readlink to use a separate page for returning symlink contents. · 3a689637
      Neil Brown authored
      This allows NFSv3 to manage 4096byte symlinks.
      
      Also remove now-unused svcbuf_reserver function.
      
      This was used to reserve space in output buffer
      for 'data', but now this is stored in separate page.
      3a689637
    • Neil Brown's avatar
      [PATCH] kNFSd: Make sure final xdr_buf.len is correct on server reply · 65774d49
      Neil Brown authored
      rq_res->len was not always updated properly.
      It is only needed in the sendto routine, so we calculate
      it just before that is called, and don't bother
      updating it anywhere else.
      65774d49
    • Neil Brown's avatar
      [PATCH] kNFSd: Support zero-copy read for NFSD · 835a922a
      Neil Brown authored
      From Hirokazu Takahashi <taka@valinux.co.jp>
      
      This patch changes read and readdir in nfsd.
      
      read:
        If the file supports readpage, we use it to collect pages out of the page
        cache and to attache them directly to the outgoing nfs reply.
        The reduces the number of copies by one, and if the filesystem/device
        driver didn't copy the data, and if the network card can support not copying
        the data, then you get zero-copy reads.
      
      readdir:
        A separate page is used for stoing the readdir response so that a fill
        PAGE_SIZE bytes of reply can be supported.
      835a922a
    • Neil Brown's avatar
      [PATCH] kNFSd: Use ->sendpage to send nfsd (and lockd) replies. · 032d3607
      Neil Brown authored
      From Hirokazu Takahashi <taka@valinux.co.jp>
      
      As all rpc server replies are now in well defined pages,
      we can use ->sendpage to send these replies, and so
      make use for zero-copy transmit on network cards that
      support it.
      032d3607
    • Neil Brown's avatar
      [PATCH] md: Fix another two bug in raid5 · 571f3078
      Neil Brown authored
       A partial block write over a block on a failed device
       would need to pre-read that block, which means pre-read all
       blocks in stripe and generate that block.  But the generate-block
       code never checked for this possibility, so it wouldn't happen.
      571f3078
    • Neil Brown's avatar
      [PATCH] md: Fix bug in raid5 · a531b8fc
      Neil Brown authored
      When analysing a stripe in handle_stripe we set bits
       R5_Wantread or R5_Wantwrite
      to indicate if a read or write is needed.  We don't actually schedule the
      IO immediately as this is done under a spinlock (sh->lock) and
      generic_make_request can block.  Instead we check these bits after
      the lock has been lifted and then schedule the IO.
      
      But once the lock has been lifted we aren't safe against multiple
      access, and it is possible that the IO will be scheduled never, or twice.
      
      So, we use test_and_clear to check and potentially schedule the IO.
      
      This wasn't a problem in 2.4 because the equivalent information was
      stored on the stack instead of in the stripe.
      
      We also make sure bi_io_vec[0] has correct values as a previous
      call to generic_make_request may have changed them.
      a531b8fc
    • Neil Brown's avatar
      [PATCH] md: Fix assorted raid1 problems. · 81fc1e93
      Neil Brown authored
      From Angus Sawyer <angus.sawyer@dsl.pipex.com>:
      
      1. Null pointer dereference in end_sync_read
      
         r1_bio->read_disk is not initialised correctly in sync_request .
      
         this is used in end_sync_read to reference the structure
         conf->mirror[read_disk].rdev which with one disk missing is NULL.
      
      
      2. Null pointer dereference in mempool_free()
      
         This is a race between close_sync() conf->r1_bufpool =3D NULL and put_buf()
         mempool_free().
      
         bio completion -> resume_device -> put_buf -> mempool_free(r1_bufpool)
      				|
      			   [ wakeup]
      				|
      			   close_sync()	-> r1_bufpool = NULL;
      
         The patch attached  reorders the mempool_free before the  barrier is released
         and merges resume_device() into put_buf(), (they are only used together).
         Otherwise I have kept the locking and wakeups identical to the existing code.
         (maybe this could be streamlined)
      
      3.  BUG() at close_sync() if (waitqueue_active(&conf->wait_resume).
      
         This occurs with and without the patch for (2).
      
         I think this is a false BUG().  From what I understand of the device barrier
         code, there is nothing wrong with make_request() waiting on wait_resume when
         this test is made.  Therefore I have removed it (the wait_idle test is still
         correct).
      
      4. raid1 tries to start a resync if there is only one working drive,
         which is pretty pointless, and noisy.  We notice that special case and
         avoid the resync.
      81fc1e93
    • Neil Brown's avatar
      [PATCH] md: Misc little raid fixes · eddcaa28
      Neil Brown authored
      Roughly in order of patch:
      
      1/ xor.h is never needed in md.c
      2/ set sb_loaded when we 'sync' mddev to rdev as well as when we load
         sb into rdev from disk.
      2/ due to lifetime changes, active count can be 2 when we stop array
      3/ due to lifetime changes, we need to explicitly clear the ->pers when we
         stop an array
      4/ autostart can only work for 0.90.0 superblocks.
         None others would be silly enough to store device numbers for
         all devices in the superblock...
      5/ we had lost the setting of 'sb' when auto-starting an array.
      6/ Code currently calls export_rdev(start_rdev) when
         IS_ERR(start_rdev), which causes an oops.
      7/ /proc/mdstat contents error:
             code does not take into account that delayed
             resyncs can wait with curr_resync = 1 or 2.
      8/ There is a premature "return NOTIFY_DONE", that possibly was in
         for debugging once...
      eddcaa28
    • James Bottomley's avatar
      Merge dougg/cloos changes in sbp2.h · 49ce412f
      James Bottomley authored
      49ce412f
    • Trond Myklebust's avatar
      [PATCH] Fix typo in nfs_readpages. · dffa30c7
      Trond Myklebust authored
      Make sure we drain the entire list of pages that failed to get added
      to the mapping.
      dffa30c7
    • Linus Torvalds's avatar
      Merge bk://linux-scsi.bkbits.net/scsi-dledford · 9096518f
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      9096518f
    • Linus Torvalds's avatar
      Merge master.kernel.org:/home/hch/BK/xfs/linux-2.5 · fd4b35fd
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      fd4b35fd
    • Christoph Hellwig's avatar
      export find_trylock_page for XFS · e1488fb5
      Christoph Hellwig authored
      e1488fb5
    • Christoph Hellwig's avatar
      [XFS] Fix compilation with ACLs enabled · c77b0542
      Christoph Hellwig authored
      SGI Modid: 2.5.x-xfs:slinx:132214a
      c77b0542
    • Christoph Hellwig's avatar
      b6af148b
    • Christoph Hellwig's avatar
      [XFS] Don't require ACL helpers for XFS · 668a676d
      Christoph Hellwig authored
      SGI Modid: 2.5.x-xfs:slinx:132176a
      668a676d
    • Stephen Lord's avatar
      [XFS] Add XFS_POSIX_ACL to control ACL compilation in xfs · f301e28e
      Stephen Lord authored
      SGI Modid: 2.5.x-xfs:slinx:132045a
      f301e28e
    • Stephen Lord's avatar
      [XFS] remove excess vn_remove from the unmount path · 724bb4a3
      Stephen Lord authored
      SGI Modid: 2.5.x-xfs:slinx:131939a
      724bb4a3
    • Stephen Lord's avatar
      [XFS] remove VPURGE · de9c7f21
      Stephen Lord authored
      SGI Modid: 2.5.x-xfs:slinx:131630a
      de9c7f21