- 17 Sep, 2004 8 commits
-
-
Roland McGrath authored
Exec fails to clean up posix-timers. This manifests itself in two ways, one worse than the other. In the single-threaded case, it just fails to clear out the timers on exec. POSIX says that exec clears out the timers from timer_create (though not the setitimer ones), so it's wrong that a lingering timer could fire after exec and kill the process with a signal it's not expecting. In the multi-threaded case, it not only leaves lingering timers, but it leaks them entirely when it replaces signal_struct, so they will never be freed by the process exiting after that exec. The new per-user RLIMIT_SIGPENDING actually limits the damage here, because a UID will fill up its quota with leaked timers and then never be able to use timer_create again (that's what my test program does). But if you have many many untrusted UIDs, this leak could be considered a DoS risk. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Ingo Molnar authored
This uses Davide's do_general_protection() fault based io-bitmap lazy update code and combines it with the ioport-owner cache. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Ingo Molnar authored
There's one additional step we can do ontop of the ports-max code to get rid of copying in X.org's case: cache the last task that set up the IO bitmap. This means we can set the offset to invalid and keep the IO bitmap of that task, and switch back to a valid offset (without any copying) when switching back to that task. (or do a copy if there is another ioperm task we switch to.) I've attached ioport-cache-2.6.8.1.patch that implements this. When there's a single active ioperm() using task in the system then the context-switch overhead is very low and constant: # ./ioperm-latency default no ioperm: scheduling latency: 2478 cycles turning on port 80 ioperm: scheduling latency: 2499 cycles turning on port 65535 ioperm: scheduling latency: 2481 cycles This single-ioperm-user situation matches 99% of the actual ioperm() usage scenarios and gets rid of any copying whatsoever - without relying on any fault mechanism. I can see no advantage of the GPF approach over this patch. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Ryan S. Arnold authored
Due to the tty ldisc code not stopping write operations against a driver even after a tty has been closed I added a mechanism to hvc_console in my previous patch to prevent this by nulling out the tty->driver_data in hvc_close() but I forgot to check tty->driver_data in hvc_write(). Anton Blanchard got several oops'es from hvc_write() accessing NULL as if it were a pointer to an hvc_struct usually stored in tty->driver_data. So this patch checks tty->driver_data in hvc_write() before it is used. Hopefully once Alan Cox's patch is checked in ldisc writes won't continue to happen after tty closes. Anton Blanchard has tested this patch and is unable to reproduce the oops with it applied. Changelog: drivers/char/hvc_console.c - Added comment to hvc_close() to explain the reason for NULLing tty->driver_data. - Added check to hvc_write() to verify that tty->driver_data is valid (NOT NULL) which would be the case if the write operation was invoked after a tty close was initiated on the tty. Signed-off-by: Ryan S. Arnold <rsa@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Markus Lidel authored
The I2O subsystem currently map all memory from the I2O controller for the controller's in queue, even if it is not necessary. This is a problem, because on some systems the size returned from pci_resource_len() could be 128MB and only 1-4MB is needed. Changes: - only ioremap as much memory as the controller is actually using. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
bk://ppc.bkbits.net/for-linus-ppcLinus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
Tom Rini authored
Signed-off-by: Leigh Brown <leigh@solinno.co.uk> Signed-off-by: Tom Rini <trini@kernel.crashing.org>
-
Tom Rini authored
The Local Protect Bit needs to be set when entering full duplex mode. Signed-off-by: Rune Torgersen <runet@innovsys.com> Signed-off-by: Tom Rini <trini@kernel.crashing.org>
-
- 16 Sep, 2004 20 commits
-
-
http://lia64.bkbits.net/linux-ia64-release-2.6.9Linus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
Tony Luck authored
into agluck-lia64.sc.intel.com:/data/home/aegl/BK/linux-ia64-release-2.6.9
-
Mark Goodwin authored
The SGI Altix PROM supports a SAL call for performance monitoring and for exporting NUMA topology. We need this in community kernels for diagnostic and performance tools to use, especially on very large machines. This patch registers a dynamic misc device "sn_hwperf" that supports an ioctl interface for reading/writing memory mapped registers on Altix nodes and routers via the new SAL call. It also creates a read-only procfs file "/proc/sgi_sn/sn_topology" to export NUMA topology and Altix hardware inventory. > What tools are using this? Performance Co-Pilot http://oss.sgi.com/projects/pcp in particular, pmshub, shubstats and linkstat. Numerous other users include anything that needs knowledge of numa topology/interconnect in order to perform well, e.g. mpt. BTW I have not exported any API functions .. at this point I don't think we need any modules to call the API. Signed-off-by: Mark Goodwin <markgw@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
-
Tony Luck authored
into agluck-lia64.sc.intel.com:/data/home/aegl/BK/linux-ia64-release-2.6.9
-
Jesse Barnes authored
Mark Goodwin suggested that we document our platform a bit. This patch adds help text for the sn2 specific kernel option. Signed-off-by: Jesse Barnes <jbarnes@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
-
Keith Owens authored
r.k[56] used to contain physical addresses but now contain virtual addresses. There are code remnants which still believe that they are physical and "convert" ar.k[56] to virtual. This breaks when current is not in region 7 (e.g. the idle task on cpu 0). Signed-off-by: Keith Owens <kaos@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
-
http://linux-mh.bkbits.net/bluetooth-2.6David S. Miller authored
into nuts.davemloft.net:/disk1/BK/net-2.6
-
Bart De Schuymer authored
Signed-off-by: Bart De Schuymer <bdschuym@pandora.be> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Thomas Graf authored
Fixes slab corruption in cbq_destroy. cbq_destroy_filters and qdisc_put_rtab(q->link.R_tab) are already called in cbq_destroy_class. The latter lead to a slab corruption due to repeated freeing of q->link.R_tab because q->link is part of q->classes. Problem introduced in 1.21. Signed-off-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Herbert Xu authored
This patch adds DSCP decapsulation for IPsec. This is enabled by a per-state flag which is off by default. Leaving it off by default maintains compatibility and is also good for performance reasons. I decided to not implement a toggle on the output path since not encapsulating the DSCP can and should be done by netfilter. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Herbert Xu authored
This patch kills the duplicate implementation of ip6_get_dsfield in inet_ecn.h. It now uses ipv6_get_dsfield from dsfield.h instead. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
-
David S. Miller authored
into nuts.davemloft.net:/disk1/BK/net-2.6
-
Hideaki Yoshifuji authored
When sending NA in response to NS, we may not know the link-layer address for the destination of the NA since unicast NS is not required to include its link-layer information. In this case, we first need to resolve the link-layer address. (RFC 2461 7.2.4) We now create neighbour entry for the destination and link-layer information will be automatically solved in the output path. Signed-off-by: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Eric Lemoine authored
Signed-off-by: Eric Lemoine <eric.lemoine@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Petr Vandrovec authored
This change switches matroxfb on x86 and x86_64 from dereferencing pointers to {read,write}[bwl], as __pa() are gone from them, and so gcc does not need an additional register for preserving address between consecutive {read,write}[bwl]. Then it switches only supported architecture left (ppc/ppc64/arm) from dereferencing pointers to __raw_{read,write}[bwl]. Third part is fixing sparse complaints: add __iomem here and there, and switch one 1bit bitfield from int to unsigned int. After this there should be no sparse complaints in matroxfb. Signed-off-by: Petr Vandrovec <vandrove@vc.cvut.cz> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Alex Williamson authored
Looks like a couple struct to pointer conversions were missed. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Rusty Russell authored
FTP NAT module doesn't register anything with no args. Oops. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Roland McGrath authored
As I explained in the waitid patches, I added the si_rusage field to siginfo_t with the idea of having the siginfo_t waitid fills in contain all the information that wait4 or any such call could ever tell you. Nowhere in POSIX nor anywhere else specifies this field in siginfo_t. When Ulrich and I hashed out the system call interface we wanted, we looked at siginfo_t and decided there was plenty of space to throw in si_rusage. Well, it turns out we didn't check the 64-bit platforms. There struct rusage is ridiculously large (lots of longs for things that are never in a million years going to hit 2^32), and my changes bumped up the size of siginfo_t. Changing that size is more trouble than it's worth. This patch reverts the changes to the siginfo_t structure types, and no longer provides the rusage details in SIGCHLD signal data. Instead, I added a fifth argument to the waitid system call to fill in rusage. waitid is the name of the POSIX function with four arguments. It might make sense to rename the system call `waitsys' to follow SGI's system call with the same arguments, or `wait5' in the mindless tradition. But, feh. I just added the argument to sys_waitid, rather than worrying about changing the name in all the tables (and choosing a new stupid name). Signed-off-by: Roland McGrath <roland@redhat.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
bk://gkernel.bkbits.net/libata-2.6Linus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
-
- 17 Sep, 2004 4 commits
-
-
Dave Airlie authored
Alan suggested using __set_current_state as being more correct for the DRM so do that. Signed-off-by: Dave Airlie <airlied@linux.ie>
-
Dave Airlie authored
Suggested-by: Nishanth Aravamudan <nacc@us.ibm.com> Approved-by: Dave Airlie <airlied@linux.ie>
-
Dave Airlie authored
Add pci_enable_device for any PCI device we want to use. From: Bjorn Helgaas <bjorn.helgaas@hp.com> Approved-by: David Airlie <airlied@linux.ie>
-
Dave Airlie authored
This caused issues with a PCI radeon card. From: Jon Smirl Approved-by: Dave Airlie <airlied@linux.ie>
-
- 16 Sep, 2004 2 commits
-
-
bk://kernel.bkbits.net/vojtech/inputLinus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
Vojtech Pavlik authored
-
- 15 Sep, 2004 6 commits
-
-
Jesse Barnes authored
The compiler has no way of knowing whether nentries will be greater than 0, so it was generating a warning that qw might be used uninitialized. Fix it by explicitly setting it to 0. Cc'ing Brian in case he has an internal version he'd like to keep in sync. Signed-off-by: Jesse Barnes <jbarnes@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
-
Jeff Garzik authored
* add dev_select hook, and default/noop implementations * export ata_dev_classify * fix a couple bugs that cropped up when building with ATA_VERBOSE_DEBUG * export __sata_phy_reset, a variant that does not call ata_bus_reset
-
Tony Luck authored
into agluck-lia64.sc.intel.com:/data/home/aegl/BK/linux-ia64-release-2.6.9
-
Tony Luck authored
current can be in region 5, use 'tpa' to convert to physical Signed-off-by: Tony Luck <tony.luck@intel.com>
-
David S. Miller authored
Kill fn_key_eq and fn_key_leq Signed-off-by: David S. Miller <davem@davemloft.net>
-
David S. Miller authored
Signed-off-by: David S. Miller <davem@davemloft.net>
-