]> git.hungrycats.org Git - linux/log
linux
23 years ago[NETFILTER]: Use CONFIG_BRIDGE_NETFILTER in ipt_REJECT.c
Bart De Schuymer [Tue, 2 Sep 2003 04:23:43 +0000 (21:23 -0700)]
[NETFILTER]: Use CONFIG_BRIDGE_NETFILTER in ipt_REJECT.c

23 years agoMerge bk://kernel.bkbits.net/davem/net-2.5
Linus Torvalds [Tue, 2 Sep 2003 00:48:07 +0000 (17:48 -0700)]
Merge bk://kernel.bkbits.net/davem/net-2.5
into home.osdl.org:/home/torvalds/v2.5/linux

23 years ago[PATCH] ide: forward-port siimage driver changes from 2.4.22
Bartlomiej Zolnierkiewicz [Tue, 2 Sep 2003 00:43:40 +0000 (17:43 -0700)]
[PATCH] ide: forward-port siimage driver changes from 2.4.22

ide: forward-port siimage driver changes from 2.4.22

23 years ago[PATCH] ide: fix ide_unregister() vs. driver model
Bartlomiej Zolnierkiewicz [Tue, 2 Sep 2003 00:43:31 +0000 (17:43 -0700)]
[PATCH] ide: fix ide_unregister() vs. driver model

From: Benjamin Herrenschmidt <benh@kernel.crashing.org>

This patch seem to have been lost, so here it is again.  It fixes an Ooops
on unregistering hwifs due to the device model now having mandatory
release() functions.  It also close the possible race we had on release if
the entry was in use (by or /sys typically) by using a semaphore waiting
for the release() to be called after doing an unregister.

23 years ago[PATCH] Fix compile for raw1394
Ben Collins [Tue, 2 Sep 2003 00:43:23 +0000 (17:43 -0700)]
[PATCH] Fix compile for raw1394

Include vmalloc.h to fix compilation of raw1394.c

23 years ago[PATCH] scsi cleanups
Arnaldo Carvalho de Melo [Tue, 2 Sep 2003 00:38:37 +0000 (17:38 -0700)]
[PATCH] scsi cleanups

  o scsi/imm.h: use c99 style initialization

  As far as I verified this also fixes a bug when doing the
  table lookup for IMM_EPP_32, that would result in "Unknown"
  as IMM_EPP_32 is equal to 6 and there is the #ifdef...

ChangeSet@1.1386, 2003-09-02 00:11:07-03:00, acme@allegro.kerneljanitors.org
  o scsi/*.h: remove not needed #define NULL

ChangeSet@1.1385, 2003-09-02 00:05:16-03:00, acme@allegro.kerneljanitors.org
  o scsi/3w-xxx.h: use c99 style init

23 years ago[BLUETOOTH]: Fix typo in module alias changes.
David S. Miller [Mon, 1 Sep 2003 23:40:58 +0000 (16:40 -0700)]
[BLUETOOTH]: Fix typo in module alias changes.

23 years ago[NET]: Use MODULE_ALIAS() in network families.
Rusty Russell [Mon, 1 Sep 2003 21:38:35 +0000 (14:38 -0700)]
[NET]: Use MODULE_ALIAS() in network families.

Previously, default aliases were hardwired into modutils.  Now they
should be inside the modules, using MODULE_ALIAS() (they will be overridden
by any user alias).

23 years ago[SUNHME]: Fix non-sbus build.
Jeff Garzik [Mon, 1 Sep 2003 21:24:40 +0000 (14:24 -0700)]
[SUNHME]: Fix non-sbus build.

23 years agoMerge nuts.ninka.net:/disk1/davem/BK/network-2.5
David S. Miller [Mon, 1 Sep 2003 21:21:29 +0000 (14:21 -0700)]
Merge nuts.ninka.net:/disk1/davem/BK/network-2.5
into nuts.ninka.net:/disk1/davem/BK/net-2.5

23 years agoBe a lot more careful about TS_USEDFPU and preemption
Linus Torvalds [Mon, 1 Sep 2003 17:37:25 +0000 (10:37 -0700)]
Be a lot more careful about TS_USEDFPU and preemption

We had some races where we testecd (or set) TS_USEDFPU together
with sequences that depended on the setting (like clearing or
setting the TS flag in %cr0) and we could be preempted in between,
which screws up the FPU state, since preemption will itself change
USEDFPU and the TS flag.

This makes it a lot more explicit: the "internal" low-level FPU
functions ("__xxxx_fpu()") all require preemption to be disabled,
and the exported "real" functions will make sure that is the case.

One case - in __switch_to() - was switched to the non-preempt-safe
internal version, since the scheduler itself has already disabled
preemption.

23 years agoFix del_timer_sync() SMP memory ordering (from Tejun Huh <tejun@aratech.co.kr>)
Linus Torvalds [Mon, 1 Sep 2003 17:05:56 +0000 (10:05 -0700)]
Fix del_timer_sync() SMP memory ordering (from Tejun Huh <tejun@aratech.co.kr>)

From Tejun's posting:
>
> This patch fixes a race between del_timer_sync and recursive timers.
> Current implementation allows the value of timer->base that is used
> for timer_pending test to be fetched before finishing running_timer
> test, so it's possible for a recursive time to be pending after
> del_timer_sync.  Adding smp_rmb before timer_pending removes the race.

23 years ago[PATCH] Update IEEE1394 (r1047)
Ben Collins [Mon, 1 Sep 2003 13:16:27 +0000 (06:16 -0700)]
[PATCH] Update IEEE1394 (r1047)

subsys   : - Added hpsb_make_streampacket() helper
           - Fix re-probe of bus after reset, when node's generation
     changes
   - Missing spinlock.h include for csr.c

general  : - Fix a few warnings from size mismatches in printk's

raw1394  : - Added RAW1394_REQ_ASYNC_STREAM
           - Use vmalloc/vfree for larger buffer support

ohci1394 : - Fix a few endianess bugs in ISO routines

eth1394  : - Fix cleanup of failed packets

23 years agoMerge bk://kernel.bkbits.net/jgarzik/net-drivers-2.5
Linus Torvalds [Mon, 1 Sep 2003 11:25:27 +0000 (04:25 -0700)]
Merge bk://kernel.bkbits.net/jgarzik/net-drivers-2.5
into home.osdl.org:/home/torvalds/v2.5/linux

23 years ago[NET] move ethtool_op_set_tx_csum from 8139cp drvr to net/core/ethtool.c,
Jeff Garzik [Mon, 1 Sep 2003 16:25:59 +0000 (12:25 -0400)]
[NET] move ethtool_op_set_tx_csum from 8139cp drvr to net/core/ethtool.c,
where it belongs.

23 years ago[netdrvr fealnx] merge typo build fix (non-x86) from 2.4
Jeff Garzik [Mon, 1 Sep 2003 13:18:05 +0000 (09:18 -0400)]
[netdrvr fealnx] merge typo build fix (non-x86) from 2.4

23 years ago[netdrvr] ethtool_ops for epic100, fealnx, winbond-840, via-rhine
Jeff Garzik [Mon, 1 Sep 2003 13:05:15 +0000 (09:05 -0400)]
[netdrvr] ethtool_ops for epic100, fealnx, winbond-840, via-rhine

23 years agoMerge bk://kernel.bkbits.net/jgarzik/misc-2.5
Linus Torvalds [Mon, 1 Sep 2003 11:22:13 +0000 (04:22 -0700)]
Merge bk://kernel.bkbits.net/jgarzik/misc-2.5
into home.osdl.org:/home/torvalds/v2.5/linux

23 years ago[PCI, ia32] don't assume "c->x86 > 6" applies to non-Intel CPUs
Jeff Garzik [Mon, 1 Sep 2003 16:59:42 +0000 (12:59 -0400)]
[PCI, ia32] don't assume "c->x86 > 6" applies to non-Intel CPUs
when programming PCI cache line size.

Just to be on the safe side.  Suggested by Ingo Oeser.

23 years agoMerge redhat.com:/spare/repo/linux-2.5
Jeff Garzik [Mon, 1 Sep 2003 11:14:26 +0000 (07:14 -0400)]
Merge redhat.com:/spare/repo/linux-2.5
into redhat.com:/spare/repo/net-drivers-2.5

23 years ago[NET] move netif_* helpers from tg3 driver to linux/netdevice.h
Jeff Garzik [Mon, 1 Sep 2003 10:56:05 +0000 (06:56 -0400)]
[NET] move netif_* helpers from tg3 driver to linux/netdevice.h

Helpers moved:
netif_poll_{enable,disable}, __netif_rx_complete, netif_tx_disable

Use the helpers in net/core/dev.c.

23 years ago[PATCH] create an m68knommu sections.h
Greg Ungerer [Mon, 1 Sep 2003 10:38:26 +0000 (03:38 -0700)]
[PATCH] create an m68knommu sections.h

This patch creates a sections.h for the m68knommu architecture.
Nothing special needed, just an include of the generic code.

23 years ago[PATCH] create an m68knommu local.h
Greg Ungerer [Mon, 1 Sep 2003 10:38:17 +0000 (03:38 -0700)]
[PATCH] create an m68knommu local.h

This patch creates a local.h for the m68knommu arhcitecture. Like
most others architectures it is just an include of the generic one.

23 years ago[PATCH] irqreturn_t fixes for m68knommu irq.h
Greg Ungerer [Mon, 1 Sep 2003 10:38:09 +0000 (03:38 -0700)]
[PATCH] irqreturn_t fixes for m68knommu irq.h

23 years ago[PATCH] sr.c should issue TEST_UNIT_READY
Matthew Dharm [Mon, 1 Sep 2003 10:37:10 +0000 (03:37 -0700)]
[PATCH] sr.c should issue TEST_UNIT_READY

The linux/drivers/scsi/sr.c code will issue a MODE_SENSE[_10] command to
a device as the first command sent to the device.  If the device has
just come out of reset, it will likely respond with a UNIT_ATTENTION /
NOT_READY status, which causes the MODE_SENSE to fail.  In fact, the
device may have several UNIT_ATTENTION conditions queued up (power-up
reset, media change, etc.)

This results in the mode page 0x2a data not being properly read and
interpreted.  As an end-effect, things like packet-writing don't work
(because the writeable bit is not set).

The solution to this is to issue one or more TEST_UNIT_READY commands to
the device to clear any pending UNIT_ATTENTION conditions.  This is the
technique used by sd.c -- in fact, this code was lifted directly from
sd.c

At some point in the future, abstraction of this initial TEST_UNIT_READY
code between all high-level SCSI drivers may be apropriate.  For now,
this patch makes sr.c issue TEST_UNIT_READY to clear the UNIT_ATTENTION,
thus allowing the mode page 0x2a code to work properly.  Given the
approaching 2.6.0-final release, I urge that this patch be accepted.

23 years agoMerge bk://bk.arm.linux.org.uk/linux-2.6-pcmcia
Linus Torvalds [Mon, 1 Sep 2003 10:32:04 +0000 (03:32 -0700)]
Merge bk://bk.arm.linux.org.uk/linux-2.6-pcmcia
into home.osdl.org:/home/torvalds/v2.5/linux

23 years ago[netdrvr ne2k-pci] ethtool_ops support
Jeff Garzik [Mon, 1 Sep 2003 09:03:08 +0000 (05:03 -0400)]
[netdrvr ne2k-pci] ethtool_ops support

23 years ago[netdrvr ne2k-pci] allocate netdev+8390 struct using new alloc_ei_netdev()
Jeff Garzik [Mon, 1 Sep 2003 08:58:58 +0000 (04:58 -0400)]
[netdrvr ne2k-pci] allocate netdev+8390 struct using new alloc_ei_netdev()

Also, call pci_disable_device() in PCI ->remove handler,
to match pci_enable_device() in PCI ->probe handler.

23 years ago[netdrvr 8390] new function alloc_ei_netdev()
Jeff Garzik [Mon, 1 Sep 2003 08:50:25 +0000 (04:50 -0400)]
[netdrvr 8390] new function alloc_ei_netdev()

(preferred over alloc_etherdev + 8390-specific ethdev_init)

23 years ago[netdrvr de2104x] ethtool_ops support
Jeff Garzik [Mon, 1 Sep 2003 07:06:15 +0000 (03:06 -0400)]
[netdrvr de2104x] ethtool_ops support

23 years agoDon't claim exclusive ownership of the device when doing
Linus Torvalds [Mon, 1 Sep 2003 05:24:11 +0000 (22:24 -0700)]
Don't claim exclusive ownership of the device when doing
the SG_IO and SCSI_IOCTL_SEND_COMMAND ioctl's. That just
screws things up when the drive is mounted.

If somebody wants exclusive access, he should indicate that
at open time.

23 years agoMerge bk://kernel.bkbits.net/acme/scsi-2.6
Linus Torvalds [Mon, 1 Sep 2003 04:18:09 +0000 (21:18 -0700)]
Merge bk://kernel.bkbits.net/acme/scsi-2.6
into home.osdl.org:/home/torvalds/v2.5/linux

23 years agoo scsi: remove include procfs_h from hosts.h
Arnaldo Carvalho de Melo [Mon, 1 Sep 2003 15:01:44 +0000 (12:01 -0300)]
o scsi: remove include procfs_h from hosts.h

23 years agoMerge nuts.ninka.net:/disk1/davem/BK/network-2.5
David S. Miller [Mon, 1 Sep 2003 04:06:51 +0000 (21:06 -0700)]
Merge nuts.ninka.net:/disk1/davem/BK/network-2.5
into nuts.ninka.net:/disk1/davem/BK/net-2.5

23 years ago[PATCH] IO scheduler, not elevator
Jens Axboe [Mon, 1 Sep 2003 03:34:08 +0000 (20:34 -0700)]
[PATCH] IO scheduler, not elevator

I've been trying to remove these, but apparently new ones crop up. Lets
just call it io scheduler, none of the ones in the kernel are using the
classic elevator algorithm.

23 years ago[PATCH] vfat_valid_longname() cleanup
Hirofumi Ogawa [Mon, 1 Sep 2003 03:27:00 +0000 (20:27 -0700)]
[PATCH] vfat_valid_longname() cleanup

From RenĂ© Scharfe <l.s.r@web.de>

As a result the size of vfat.o drops by 384 bytes in my build.

23 years agoMerge bk://kernel.bkbits.net/jgarzik/net-drivers-2.5
Linus Torvalds [Mon, 1 Sep 2003 03:26:16 +0000 (20:26 -0700)]
Merge bk://kernel.bkbits.net/jgarzik/net-drivers-2.5
into home.osdl.org:/home/torvalds/v2.5/linux

23 years agoMerge bk://kernel.bkbits.net/jgarzik/pci-2.5
Linus Torvalds [Mon, 1 Sep 2003 03:25:26 +0000 (20:25 -0700)]
Merge bk://kernel.bkbits.net/jgarzik/pci-2.5
into home.osdl.org:/home/torvalds/v2.5/linux

23 years ago[video planb] don't hardware pci command/cacheline/latency values,
Jeff Garzik [Mon, 1 Sep 2003 07:41:34 +0000 (03:41 -0400)]
[video planb] don't hardware pci command/cacheline/latency values,
use the PCI layer instead to provide those for us.

23 years ago[tokenring lanstreamer] clean up MWI / PCI_CACHE_LINE_SIZE usage
Jeff Garzik [Mon, 1 Sep 2003 07:31:03 +0000 (03:31 -0400)]
[tokenring lanstreamer] clean up MWI / PCI_CACHE_LINE_SIZE usage

* remove PCI_CACHE_LINE_SIZE workaround, PCI core already does
  this for us.  (main change)
* propagate pci_set_dma_mask return value
* add 'ULL' suffix to pci_set_dma_mask arg
* propagate pci_enable_device return value
* call pci_set_mwi, check and propagate its return value
* call pci_clear_mwi and pci_disable_device on close, and probe error
* call iounmap when cleaning up

23 years ago[PCI] Remove cases where PCI_CACHE_LINE_SIZE is hardcoded.
Jeff Garzik [Mon, 1 Sep 2003 07:24:50 +0000 (03:24 -0400)]
[PCI] Remove cases where PCI_CACHE_LINE_SIZE is hardcoded.

Modifies drivers atm/eni.c, ide/pci/cmd64x.c, and
ide/pci/ns87415.c.  Ack'd by DaveM.

23 years ago[PATCH] meye driver update
Stelian Pop [Mon, 1 Sep 2003 03:25:05 +0000 (20:25 -0700)]
[PATCH] meye driver update

This implements the needed 'release' callback in order to make
videodev/sysfs happy again.

23 years ago[PATCH] reenable CAPTURE button in sonypi
Stelian Pop [Mon, 1 Sep 2003 03:24:33 +0000 (20:24 -0700)]
[PATCH] reenable CAPTURE button in sonypi

This reenables the CAPTURE button events in the sonypi driver, which
were lost with the latest patch...

23 years ago[PATCH] software hd led support
Jens Axboe [Mon, 1 Sep 2003 03:18:28 +0000 (20:18 -0700)]
[PATCH] software hd led support

This adds support for software controlled hard drive LED activity.

This is really nice on such machines as Apple Powerbooks, where there is
no such LED in the first place and the sleep/suspend LED isn't used for
anything when the machine is running.

23 years agoMerge bk://kernel.bkbits.net/davem/tg3-2.5
Linus Torvalds [Mon, 1 Sep 2003 02:46:16 +0000 (19:46 -0700)]
Merge bk://kernel.bkbits.net/davem/tg3-2.5
into home.osdl.org:/home/torvalds/v2.5/linux

23 years agoMerge bk://kernel.bkbits.net/davem/net-2.5
Linus Torvalds [Mon, 1 Sep 2003 02:44:03 +0000 (19:44 -0700)]
Merge bk://kernel.bkbits.net/davem/net-2.5
into home.osdl.org:/home/torvalds/v2.5/linux

23 years ago[IPV6]: Fix printf format in ip6fl_fl_seq_show.
David S. Miller [Mon, 1 Sep 2003 00:38:30 +0000 (17:38 -0700)]
[IPV6]: Fix printf format in ip6fl_fl_seq_show.

23 years ago[IPV6]: linger member of ip6_flowlabel needs to be a long.
David S. Miller [Mon, 1 Sep 2003 00:33:17 +0000 (17:33 -0700)]
[IPV6]: linger member of ip6_flowlabel needs to be a long.

23 years ago[IPV6]: Fix types in fl6_renew().
David S. Miller [Mon, 1 Sep 2003 00:30:14 +0000 (17:30 -0700)]
[IPV6]: Fix types in fl6_renew().

23 years ago[IPV6]: Fix timer handling in ip6_flowlabel.c
Vinay K. Nallamothu [Mon, 1 Sep 2003 00:17:57 +0000 (17:17 -0700)]
[IPV6]: Fix timer handling in ip6_flowlabel.c
- Use time_{before,after}() macros.
- Use mod_timer instead of del_timer/add_timer
- Properly synchronize timer resetting using ip6_fl_lock.

23 years ago[NET]: Remove reference to CONFIG_IA64_SGI_SN1, it is gone.
Christoph Hellwig [Sun, 31 Aug 2003 19:42:15 +0000 (12:42 -0700)]
[NET]: Remove reference to CONFIG_IA64_SGI_SN1, it is gone.

23 years ago[IPV6]: Remove sockets from ip6_tunnel.c
Ville Nuorvala [Sun, 31 Aug 2003 18:55:15 +0000 (11:55 -0700)]
[IPV6]: Remove sockets from ip6_tunnel.c

23 years ago[IPV6]: Set dev->{dev_addr,broadcast} in ip6_tnls.
Ville Nuorvala [Sun, 31 Aug 2003 18:53:57 +0000 (11:53 -0700)]
[IPV6]: Set dev->{dev_addr,broadcast} in ip6_tnls.

23 years ago[IPV6]: Use free_netdev as ip6_tunnel device destructor.
Ville Nuorvala [Sun, 31 Aug 2003 18:52:11 +0000 (11:52 -0700)]
[IPV6]: Use free_netdev as ip6_tunnel device destructor.

23 years ago[IPV6]: Fix two bugs in ip6_tunnel.c ICMP error handling.
Ville Nuorvala [Sun, 31 Aug 2003 18:47:35 +0000 (11:47 -0700)]
[IPV6]: Fix two bugs in ip6_tunnel.c ICMP error handling.

Fix byte order of info parameter in ip6ip6_err().

23 years ago[BRIDGE]: Create CONFIG_BRIDGE_NETFILTER and use it instead of messy tests.
Bart De Schuymer [Sun, 31 Aug 2003 18:44:39 +0000 (11:44 -0700)]
[BRIDGE]: Create CONFIG_BRIDGE_NETFILTER and use it instead of messy tests.

23 years ago[IPV6]: Fix typo in icmp BUG() fix.
David S. Miller [Sun, 31 Aug 2003 18:38:12 +0000 (11:38 -0700)]
[IPV6]: Fix typo in icmp BUG() fix.

23 years ago[IPV6]: Do not BUG() on icmp6 socket contention, just drop.
David S. Miller [Sun, 31 Aug 2003 18:33:48 +0000 (11:33 -0700)]
[IPV6]: Do not BUG() on icmp6 socket contention, just drop.

23 years ago[NET]: Convert netdev_rx_stat to per-cpu data.
Christoph Hellwig [Sun, 31 Aug 2003 18:19:19 +0000 (11:19 -0700)]
[NET]: Convert netdev_rx_stat to per-cpu data.

23 years ago[IPV6]: Use per-cpu data for icmp sockets.
Christoph Hellwig [Sun, 31 Aug 2003 18:15:03 +0000 (11:15 -0700)]
[IPV6]: Use per-cpu data for icmp sockets.

23 years ago[NET]: Add MODULE_LICENSE to xfrm_user.c
Herbert Xu [Sun, 31 Aug 2003 18:12:45 +0000 (11:12 -0700)]
[NET]: Add MODULE_LICENSE to xfrm_user.c

23 years ago[TG3]: ICH2 needs MBOX write reorder bug workaround too.
Xose Vazquez Perez [Sun, 31 Aug 2003 18:11:37 +0000 (11:11 -0700)]
[TG3]: ICH2 needs MBOX write reorder bug workaround too.

23 years ago[SPARC]: Mark get_rtc_time() static in SBUS rtc driver.
David S. Miller [Sun, 31 Aug 2003 17:29:32 +0000 (10:29 -0700)]
[SPARC]: Mark get_rtc_time() static in SBUS rtc driver.

23 years agoMerge bk://kernel.bkbits.net/jgarzik/net-drivers-2.6
Jeff Garzik [Sun, 31 Aug 2003 17:26:35 +0000 (13:26 -0400)]
Merge bk://kernel.bkbits.net/jgarzik/net-drivers-2.6
into redhat.com:/spare/repo/net-drivers-2.5

23 years ago[netdrvr 8139cp] PCI MWI cleanup; remove unneeded workaround
Jeff Garzik [Sun, 31 Aug 2003 16:14:47 +0000 (12:14 -0400)]
[netdrvr 8139cp] PCI MWI cleanup; remove unneeded workaround

* The PCI layer now handles incorrect cacheline size settings,
  as it should.  Remove our own workarounds.
* Move pci_set_mwi up much earlier in the probe process,
  and check its return value.
* Call pci_clear_mwi() in ->probe error handling
* Call pci_clear_mwi() in ->remove

23 years agoMerge nuts.ninka.net:/home/davem/src/BK/tg3-2.5
David S. Miller [Sun, 31 Aug 2003 16:08:24 +0000 (09:08 -0700)]
Merge nuts.ninka.net:/home/davem/src/BK/tg3-2.5
into nuts.ninka.net:/disk1/davem/BK/tg3-2.5

23 years agoMerge nuts.ninka.net:/home/davem/src/BK/sparc-2.5
David S. Miller [Sun, 31 Aug 2003 15:59:39 +0000 (08:59 -0700)]
Merge nuts.ninka.net:/home/davem/src/BK/sparc-2.5
into nuts.ninka.net:/disk1/davem/BK/sparc-2.5

23 years agoMerge
David S. Miller [Sun, 31 Aug 2003 15:52:50 +0000 (08:52 -0700)]
Merge

23 years ago[PATCH] Add documentation for /proc/stat
Andrew Morton [Sun, 31 Aug 2003 11:36:56 +0000 (04:36 -0700)]
[PATCH] Add documentation for /proc/stat

From: "Bryan O'Sullivan" <bos@serpentine.com>

This patch adds documentation for the contents of the /proc/stat file.

23 years ago[PATCH] ext3_setxattr() oops fix
Andrew Morton [Sun, 31 Aug 2003 11:36:48 +0000 (04:36 -0700)]
[PATCH] ext3_setxattr() oops fix

If journal_start() fails it returns an ERR_PTR.  Best not pass that into
journal_stop().

23 years ago[PATCH] tty oops fix
Andrew Morton [Sun, 31 Aug 2003 11:36:41 +0000 (04:36 -0700)]
[PATCH] tty oops fix

Ancient bug, reported by Hiroshi Inoue <inoueh@uranus.dti.ne.jp>:

 1. login to tty2 (not tty1)
 2. start kon (Kanji cONsole emulator, console which support
    Japanese characters)
 3. exit kon
 4. logout

It oopses in the debugging function check_tty_count(), walking a list_head
which has been list_del()'d.   Call trace is:

#0  check_tty_count (tty=0x10d42000, routine=0xc817b00 ".paths") at include/asm/processor.h:583
#1  0x022c6c00 in do_tty_hangup (data=0x10d42000) at drivers/char/tty_io.c:426
#2  0x022c6f60 in tty_vhangup (tty=0xc817b00) at drivers/char/tty_io.c:536
#3  0x022c6fcc in disassociate_ctty (on_exit=1) at drivers/char/tty_io.c:574
#4  0x02127aee in do_exit (code=0) at kernel/exit.c:718
#5  0x02127caa in do_group_exit (exit_code=0) at kernel/exit.c:796
#6  0x02127cbc in sys_exit_group (error_code=0) at kernel/exit.c:807

The tty refcount is zero, so everything seems consistent and sensible.  The
fix just uses list_del_init() on that list_head.

Heaven knows what the locking for tty->count is though.  Some bizarre mixture
of BKL, tty_sem and nothing at all.

23 years ago[PATCH] scsi_unregister() oops fix
Andrew Morton [Sun, 31 Aug 2003 11:36:33 +0000 (04:36 -0700)]
[PATCH] scsi_unregister() oops fix

Some drivers such as aha1542 and aic7xxx_old will call scsi_register() and
then, if some succeeding operations fails they will call scsi_unregister(),
without an intervening scsi_set_host().

This causes an oops in scsi_put_device(), because kobj->parent is NULL.

In other words, scsi_register() immediately followed by scsi_unregister()
is guaranteed to oops.

The patch makes scsi_host_dev_release() more robust against this usage
pattern.

23 years ago[PATCH] handle setup_swap_extents() error in swapon.
Andrew Morton [Sun, 31 Aug 2003 11:36:26 +0000 (04:36 -0700)]
[PATCH] handle setup_swap_extents() error in swapon.

From: Hugh Dickins <hugh@veritas.com>

It's good that swapon fails on a tmpfs file ("swapfile has holes"), but not
good that it then hangs up: note error from setup_swap_extents.

23 years ago[PATCH] fix advansys.c if !CONFIG_PROC_FS
Andrew Morton [Sun, 31 Aug 2003 11:36:19 +0000 (04:36 -0700)]
[PATCH] fix advansys.c if !CONFIG_PROC_FS

From: Adrian Bunk <bunk@fs.tum.de>

The patch below fixes a compile error in drivers/scsi/advansys.c if
!CONFIG_PROC_FS.

23 years ago[PATCH] HPET 2/6: boot parsing
Andrew Morton [Sun, 31 Aug 2003 11:36:11 +0000 (04:36 -0700)]
[PATCH] HPET 2/6: boot parsing

From: "Pallipadi, Venkatesh" <venkatesh.pallipadi@intel.com>

acpi boot time parsing changes to look for HPET

23 years ago[PATCH] HPET 6/6: rtc emulation
Andrew Morton [Sun, 31 Aug 2003 11:36:03 +0000 (04:36 -0700)]
[PATCH] HPET 6/6: rtc emulation

From: "Pallipadi, Venkatesh" <venkatesh.pallipadi@intel.com>

This can be a standalone patch.  With this patch we basically try to emulate
RTC interrupt functions in software using HPET counter 1.

23 years ago[PATCH] HPET 5/6: timer services
Andrew Morton [Sun, 31 Aug 2003 11:35:56 +0000 (04:35 -0700)]
[PATCH] HPET 5/6: timer services

From: "Pallipadi, Venkatesh" <venkatesh.pallipadi@intel.com>

All changes required to support timer services (gettimeofday) with HPET.

23 years ago[PATCH] HPET 4/6: Core
Andrew Morton [Sun, 31 Aug 2003 11:35:48 +0000 (04:35 -0700)]
[PATCH] HPET 4/6: Core

From: "Pallipadi, Venkatesh" <venkatesh.pallipadi@intel.com>

All the changes required to use HPET in place of PIT as the kernel base-timer
at IRQ 0.

23 years ago[PATCH] HPET 3/6: makefile and config changes
Andrew Morton [Sun, 31 Aug 2003 11:35:39 +0000 (04:35 -0700)]
[PATCH] HPET 3/6: makefile and config changes

From: "Pallipadi, Venkatesh" <venkatesh.pallipadi@intel.com>

Miscallaneous makefile and config changes

23 years ago[PATCH] HPET 1/6: Support for HPET based timer
Andrew Morton [Sun, 31 Aug 2003 11:35:31 +0000 (04:35 -0700)]
[PATCH] HPET 1/6: Support for HPET based timer

From: "Pallipadi, Venkatesh" <venkatesh.pallipadi@intel.com>

High Precision Event Timer (HPET) is next generation timer
hardware and has various advantages over legacy 8254
(PIT) timer, like:
- Associated registers are mapped to memory space. So, we no
  longer require in and out on legacy ioports
- Memory map address is reported by ACPI (and are not
  hard-coded)
- Each timer can be configured to generate separate interrupts,
  even sharing lines with PCI devices
- HPET has a minimum period of 100 nanosecs and is not fixed.
  Giving a flexibility of increasing the resolution in future.
- Most current implementations has 3 counters, but in future,
  we can have as many as 32 timers per block, and 8
  HPET timer blocks (total 256 timers)
- Can support 32bit and 64bit counting

(Refer to http://www.intel.com/labs/platcomp/hpet/hpetspec.htm
 for complete specs)

The patchset that follow adds support for High Precision Event
Timer (HPET) based timer in kernel. This uses the HPET in
LegacyReplacement mode (so that counter 0 will be tied to IRQ0,
and counter 1 will be tied to IRQ 8). In this mode, HPET overrides
PIT and RTC interrupt lines. The patch will enable HPET by default,
on systems where ACPI tables reports this feature. The patch will
have no impact on systems that do not support this feature.

A major change from previous version is elimination of fixmap for HPET.
Based on Andrew Morton's suggestion, we have a new hook in init/main.c for
late_time_init(), at which time we can use ioremap, in place of fixmap.
Impact on other archs: Calibrate_delay() (and hence loops_per_jiffy
calculation) has moved down in main.c, from after time_init() to after
kmem_cache_init().

1/6 - hpet1.patch - main.c change to introduce late_time_init()

23 years ago[PATCH] Remove SSE2 bugs.h check
Andrew Morton [Sun, 31 Aug 2003 11:35:24 +0000 (04:35 -0700)]
[PATCH] Remove SSE2 bugs.h check

From: Andi Kleen <ak@muc.de>

Remove some dead code.

CONFIG_SSE2 hasn't been defined for some time, because everything
SSE related is handled at runtime based on cpuid.

23 years ago[PATCH] vmscan: zone pressure simplification and fix
Andrew Morton [Sun, 31 Aug 2003 11:35:17 +0000 (04:35 -0700)]
[PATCH] vmscan: zone pressure simplification and fix

The zone->pressure field is supposed to record the amount of reclaim pressure
which this zone is under.  We need this info so we know whether to unmap
pages from pagetables right from the outset of a balance_pgdat() or
try_to_free_pages() invokation.

The problem with the current code is that the exponential average gets tugged
around too much: as we perform the increasing-priority scan, the pressure
metric is made artificially low by the early part of the scan.

So instead what we do here is to record within the zone the scanning priority
from the zone's previous scan.  It is defined as the priority at which the
zone achieved the "enough pages free" state.  This prev_priority is used on
the next scan for the do-we-need-to-be-unmapping-pages decision.

23 years ago[PATCH] vmscan: zone pressure calculation fix
Andrew Morton [Sun, 31 Aug 2003 11:35:09 +0000 (04:35 -0700)]
[PATCH] vmscan: zone pressure calculation fix

Off-by-one in balance_pgdat(): `priority' can never go negative.  It causes
the scanning priority thresholds to be quite wrong and kswapd tends to go
berzerk when there is a lot of mapped memory around.

23 years ago[PATCH] ipc_init() uses vmalloc too early
Andrew Morton [Sun, 31 Aug 2003 11:35:02 +0000 (04:35 -0700)]
[PATCH] ipc_init() uses vmalloc too early

From: Andrea Arcangeli <andrea@suse.de>

aka: "vmalloc allocations in ipc needs smp initialized (and vm must be
allowed to schedule in 2.6)"

In short if you change SEMMNI to 8192 the kernel will crash at boot, beause
it tries to call vmalloc before the smp is initialized.  The reason is that
vmalloc calls into the pte alloc code, and the fast pte alloc is tried
first, but that reads into the pte_quicklist, that requires the cpu_data to
be initialized (and that happens in smp_init()).

the patch is obviously safe, since no piece of kernel (especially the code
in the check_bugs and smp_init paths ;) calls into the ipc subsystem.

The reason this started to trigger wasn't really that we increased SEMMNI,
but what happend is that some IPC data structure grown, and for some reason
the corruption due the uninitalized pte_quicklist triggers only for smp
boxes with less than 1G (not very common anymore ;).  So it wasn't
immediatly reproducible on all setups.

2.6 doesn't suffer from the same problem, simply because 2.6 isn't using
the quicklist anymore, but I think it would be much more correct to make
the same change in 2.6 too, since whatever cond_resched() in the vm paths
(and they're definitely allowed to call it), will lead to a crash since the
init task isn't initialized and the scheduler can't be invoked yet.  (and
2.6 already has the bigger data structures that should trigger the vmalloc
all the time on all setups)

23 years ago[PATCH] raw driver oops fix
Andrew Morton [Sun, 31 Aug 2003 11:34:53 +0000 (04:34 -0700)]
[PATCH] raw driver oops fix

From: Dave Olien <dmo@osdl.org>

The raw.c character device Oopses dereferencing a NULL pointer in
bd_claim() This problem occurred after bd_claim() in block_dev.c was
modified to "claim the whole device when a partition is claimed".

raw_open() made the mistake of calling bd_claim BEFORE calling blkdev_get().
At that time, the bdev->bd_contains field has not yet been initialized.
Switching the order allows blkdev_get() to initialize those fields before
calling bd_claim().

Also fixed up some error return paths:

igrab() should never fail under these circumstances since the caller
already has a reference to that inode through the bdev at that time.

In the event of blkdev_get() failure or set_blocksize() failure, not all
the work to unwind from the error was done.

23 years ago[PATCH] compat ioctl_table fix
Andrew Morton [Sun, 31 Aug 2003 11:34:45 +0000 (04:34 -0700)]
[PATCH] compat ioctl_table fix

The arch ioctl tables are doing this:

struct foo ioctl_start[] = {
...
};
struct foo ioctl_end[0];

and fs/compat.c expects that the table lies between &ioctl_end and
&ioctl_start.

Problem is, gcc-3.3 puts ioctl_end into bss, even if it is initialised.  It
doesn't work.

So we do away with the ioctl_end thing and add

int ioctl_table_length = ARRAY_SIZE(ioctl_start);

to each architecture.

23 years ago[PATCH] mtrr cleanups
Andrew Morton [Sun, 31 Aug 2003 11:34:35 +0000 (04:34 -0700)]
[PATCH] mtrr cleanups

- Remove duplicated implementation of attrib_to_str()

- Make mtrr_strings[] static to if.c

23 years ago[PATCH] make voyager work again after the cpumask_t changes
Andrew Morton [Sun, 31 Aug 2003 11:34:26 +0000 (04:34 -0700)]
[PATCH] make voyager work again after the cpumask_t changes

From: James Bottomley <James.Bottomley@SteelEye.com>

Most is just simple fixes; however, the needless change from atomic to
non-atomic operations in smp_invalidate_interrupt() caused me a lot of
pain to track down since it introduced some very subtle bugs.

I've also taken phys_cpu_present_map out of smp.h.  Since it
physid_mask_t is defined in mpspec.h anyway, and contains a duplicate
definition, I don't believe it can hurt anything.

23 years ago[PATCH] Fix a few declarations
Andrew Morton [Sun, 31 Aug 2003 11:34:19 +0000 (04:34 -0700)]
[PATCH] Fix a few declarations

extern decls in .c files are evil.  Put the send_sigio(), fcntl_setlease()
and fcntl_getlease() into fs.h.

23 years ago[PATCH] Use tgid rather than pid in dnotify
Andrew Morton [Sun, 31 Aug 2003 11:34:11 +0000 (04:34 -0700)]
[PATCH] Use tgid rather than pid in dnotify

From: Ulrich Drepper <drepper@redhat.com>

I'm not entirely sure about this change.  But it seems to be necessary.
The dnotify code stores the PID in the file structure.  The entire process
shares the file and any signal (is it used for that?) should be sent to the
process (thread group), not the individual thread.  Also keep in mind that
threads can go away while the process (and therefore file descriptor)
remain.  And the ID of the thread can be reused.

Somebody who knows this code should take a good look.

(Looks right to me...)

23 years ago[PATCH] floppy driver cleanup
Andrew Morton [Sun, 31 Aug 2003 11:34:04 +0000 (04:34 -0700)]
[PATCH] floppy driver cleanup

From: "Randy.Dunlap" <rddunlap@osdl.org>

- use kernel.h min() and max();

- C99 initializers;

- Tidy up the scheule_work() callbacks (none of them take an arg)

23 years ago[PATCH] fix arcnet printk parameter types
Andrew Morton [Sun, 31 Aug 2003 11:33:57 +0000 (04:33 -0700)]
[PATCH] fix arcnet printk parameter types

From: "Randy.Dunlap" <rddunlap@osdl.org>

fix arcnet printk parameter types

23 years ago[PATCH] kbuild: warn if the user has old modutils
Andrew Morton [Sun, 31 Aug 2003 11:33:50 +0000 (04:33 -0700)]
[PATCH] kbuild: warn if the user has old modutils

From: Valdis.Kletnieks@vt.edu, Sam Ravnborg <sam@ravnborg.org>

Adds an explicit check for the new modutils in the build system.

Generally we should avoid these sorts of hardwired checks for the right
versions of things, but we are still getting a significant number of problem
reports due to people not having the new tools.  Let's help them out.

23 years ago[PATCH] Cyclades ISA serial driver fix
Andrew Morton [Sun, 31 Aug 2003 11:33:41 +0000 (04:33 -0700)]
[PATCH] Cyclades ISA serial driver fix

From: "John Stoffel" <stoffel@lucent.com>

Quick patch to get my 8 port Cyclades Cyclom-Y ISA card to work.

(It doesn't look to be very SMP-robust, but then the 2.4 dirver probably
isn't either).

23 years ago[PATCH] hch has moved
Andrew Morton [Sun, 31 Aug 2003 11:33:34 +0000 (04:33 -0700)]
[PATCH] hch has moved

From: Christoph Hellwig <hch@lst.de>

I moved a while ago and I'm also not at SGI anymore.

23 years ago[PATCH] AS: don't anticipate against a task's initial I/O
Andrew Morton [Sun, 31 Aug 2003 11:33:27 +0000 (04:33 -0700)]
[PATCH] AS: don't anticipate against a task's initial I/O

From: Nick Piggin <piggin@cyberone.com.au>

In the anticipatory scheduler, don't anticipate against the very first IO
request which a process issues.

This solves a very specific problem wherein a process starts, submits a
single IO then exits.

23 years ago[PATCH] evdev_ioctl does not report EV_MSC capabilities
Andrew Morton [Sun, 31 Aug 2003 11:33:19 +0000 (04:33 -0700)]
[PATCH] evdev_ioctl does not report EV_MSC capabilities

From: Dmitry Torokhov <dtor_core@ameritech.net>

While working on my GPM patches found out that EV_MSC was forgotten...

23 years ago[PATCH] large dev_t 12/12 oops fix
Andrew Morton [Sun, 31 Aug 2003 11:33:12 +0000 (04:33 -0700)]
[PATCH] large dev_t 12/12 oops fix

From: viro@parcelfarce.linux.theplanet.co.uk

On Wed, Aug 27, 2003 at 01:46:37AM -0700, Andrew Morton wrote:
>
> LILO seems to be oopsing in HDIO_GETGEO ioctl for some reason, in
> generic_ide_ioctl().
>
> I'm not sure quite why though.  Could one of your patches affected this
> area?

The last one (fix for hd_struct handling).  The fix follows:

23 years ago[PATCH] remove size_t-based printk warnings
Andrew Morton [Sun, 31 Aug 2003 11:33:03 +0000 (04:33 -0700)]
[PATCH] remove size_t-based printk warnings

From: "Randy.Dunlap" <rddunlap@osdl.org>

This patch removes warnings on non-matching parameter types to printk
and incorrect function types (n_hdlc).

23 years ago[PATCH] add context switch counters
Andrew Morton [Sun, 31 Aug 2003 11:32:56 +0000 (04:32 -0700)]
[PATCH] add context switch counters

From: Peter Chubb <peterc@gelato.unsw.edu.au>

Currently, the context switch counters reported by getrusage() are
always zero.  The appended patch adds fields to struct task_struct to
count context switches, and adds code to do the counting.

The patch adds 4 longs to struct task struct, and a single addition to
the fast path in schedule().