GitHub/mt8127/android_kernel_alcatel_ttab.git
19 years ago[PATCH] Numa-aware slab allocator V5
Christoph Lameter [Fri, 9 Sep 2005 20:03:32 +0000 (13:03 -0700)]
[PATCH] Numa-aware slab allocator V5

The NUMA API change that introduced kmalloc_node was accepted for
2.6.12-rc3.  Now it is possible to do slab allocations on a node to
localize memory structures.  This API was used by the pageset localization
patch and the block layer localization patch now in mm.  The existing
kmalloc_node is slow since it simply searches through all pages of the slab
to find a page that is on the node requested.  The two patches do a one
time allocation of slab structures at initialization and therefore the
speed of kmalloc node does not matter.

This patch allows kmalloc_node to be as fast as kmalloc by introducing node
specific page lists for partial, free and full slabs.  Slab allocation
improves in a NUMA system so that we are seeing a performance gain in AIM7
of about 5% with this patch alone.

More NUMA localizations are possible if kmalloc_node operates in an fast
way like kmalloc.

Test run on a 32p systems with 32G Ram.

w/o patch
Tasks    jobs/min  jti  jobs/min/task      real       cpu
    1      485.36  100       485.3640     11.99      1.91   Sat Apr 30 14:01:51 2005
  100    26582.63   88       265.8263     21.89    144.96   Sat Apr 30 14:02:14 2005
  200    29866.83   81       149.3342     38.97    286.08   Sat Apr 30 14:02:53 2005
  300    33127.16   78       110.4239     52.71    426.54   Sat Apr 30 14:03:46 2005
  400    34889.47   80        87.2237     66.72    568.90   Sat Apr 30 14:04:53 2005
  500    35654.34   76        71.3087     81.62    714.55   Sat Apr 30 14:06:15 2005
  600    36460.83   75        60.7681     95.77    853.42   Sat Apr 30 14:07:51 2005
  700    35957.00   75        51.3671    113.30    990.67   Sat Apr 30 14:09:45 2005
  800    33380.65   73        41.7258    139.48   1140.86   Sat Apr 30 14:12:05 2005
  900    35095.01   76        38.9945    149.25   1281.30   Sat Apr 30 14:14:35 2005
 1000    36094.37   74        36.0944    161.24   1419.66   Sat Apr 30 14:17:17 2005

w/patch
Tasks    jobs/min  jti  jobs/min/task      real       cpu
    1      484.27  100       484.2736     12.02      1.93   Sat Apr 30 15:59:45 2005
  100    28262.03   90       282.6203     20.59    143.57   Sat Apr 30 16:00:06 2005
  200    32246.45   82       161.2322     36.10    282.89   Sat Apr 30 16:00:42 2005
  300    37945.80   83       126.4860     46.01    418.75   Sat Apr 30 16:01:28 2005
  400    40000.69   81       100.0017     58.20    561.48   Sat Apr 30 16:02:27 2005
  500    40976.10   78        81.9522     71.02    696.95   Sat Apr 30 16:03:38 2005
  600    41121.54   78        68.5359     84.92    834.86   Sat Apr 30 16:05:04 2005
  700    44052.77   78        62.9325     92.48    971.53   Sat Apr 30 16:06:37 2005
  800    41066.89   79        51.3336    113.38   1111.15   Sat Apr 30 16:08:31 2005
  900    38918.77   79        43.2431    134.59   1252.57   Sat Apr 30 16:10:46 2005
 1000    41842.21   76        41.8422    139.09   1392.33   Sat Apr 30 16:13:05 2005

These are measurement taken directly after boot and show a greater
improvement than 5%.  However, the performance improvements become less
over time if the AIM7 runs are repeated and settle down at around 5%.

Links to earlier discussions:
http://marc.theaimsgroup.com/?t=111094594500003&r=1&w=2
http://marc.theaimsgroup.com/?t=111603406600002&r=1&w=2

Changelog V4-V5:
- alloc_arraycache and alloc_aliencache take node parameter instead of cpu
- fix initialization so that nodes without cpus are properly handled.
- simplify code in kmem_cache_init
- patch against Andrews temp mm3 release
- Add Shai to credits
- fallback to __cache_alloc from __cache_alloc_node if the node's cache
  is not available yet.

Changelog V3-V4:
- Patch against 2.6.12-rc5-mm1
- Cleanup patch integrated
- More and better use of for_each_node and for_each_cpu
- GCC 2.95 fix (do not use [] use [0])
- Correct determination of INDEX_AC
- Remove hack to cause an error on platforms that have no CONFIG_NUMA but nodes.
- Remove list3_data and list3_data_ptr macros for better readability

Changelog V2-V3:
- Made to patch against 2.6.12-rc4-mm1
- Revised bootstrap mechanism so that larger size kmem_list3 structs can be
  supported. Do a generic solution so that the right slab can be found
  for the internal structs.
- use for_each_online_node

Changelog V1-V2:
- Batching for freeing of wrong-node objects (alien caches)
- Locking changes and NUMA #ifdefs as requested by Manfred

Signed-off-by: Alok N Kataria <alokk@calsoftinc.com>
Signed-off-by: Shobhit Dayal <shobhit@calsoftinc.com>
Signed-off-by: Shai Fultheim <Shai@Scalex86.org>
Signed-off-by: Christoph Lameter <clameter@sgi.com>
Cc: Manfred Spraul <manfred@colorfullife.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] pcmcia: add pcmcia to IRQ information
Brice Goglin [Fri, 9 Sep 2005 20:03:29 +0000 (13:03 -0700)]
[PATCH] pcmcia: add pcmcia to IRQ information

Add a devname parameter to the pcmcia_device structure, fills it with
"pcmcia<bus_id>" in pcmcia_device_add, and passes it to request_irq in
pcmcia_request_irq.

Signed-off-by: Brice Goglin <Brice.Goglin@ens-lyon.org>
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] pcmcia: more IDs for ide_cs
Dominik Brodowski [Fri, 9 Sep 2005 20:03:28 +0000 (13:03 -0700)]
[PATCH] pcmcia: more IDs for ide_cs

(Partly From: David Brownell <dbrownell@users.sourceforge.net> )

Make ID-CS recognize the CF card manufacturer records for Samsung, Lexar and
STI.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] pcmcia: OMAP CF controller
David Brownell [Fri, 9 Sep 2005 20:03:28 +0000 (13:03 -0700)]
[PATCH] pcmcia: OMAP CF controller

This adds a socket driver for the OMAP CF controller; it's currently in use on
OSK boards.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] pcmcia: remove unused Vpp1, Vpp2 and Vcc
Dominik Brodowski [Fri, 9 Sep 2005 20:03:27 +0000 (13:03 -0700)]
[PATCH] pcmcia: remove unused Vpp1, Vpp2 and Vcc

config_t->Vpp1, Vpp2 and Vcc are never read, so remove them.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] pcmcia: remove unused client_t
Dominik Brodowski [Fri, 9 Sep 2005 20:03:26 +0000 (13:03 -0700)]
[PATCH] pcmcia: remove unused client_t

client_t and CLIENT_MAGIC are unused, so remove them

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] pcmcia/yenta: avoid PCI write posting problem
Daniel Ritz [Fri, 9 Sep 2005 20:03:25 +0000 (13:03 -0700)]
[PATCH] pcmcia/yenta: avoid PCI write posting problem

extend cb_writel(), exca_writeb(), exca_writel() to do a read[lb]() after
the write[lb]() to avoid possible problem with PCI write posting.

Seems to fix Bug #5061.

Signed-off-by: Daniel Ritz <daniel.ritz@gmx.ch>
Cc: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] fix pcmcia_request_irq() for multifunction card
Daniel Ritz [Fri, 9 Sep 2005 20:03:25 +0000 (13:03 -0700)]
[PATCH] fix pcmcia_request_irq() for multifunction card

multifunction cards need to have the same irq assigned to both functions.
the code tries that but fails because ret is still set to CS_IN_USE which
results in the function having the CB irq assigned.  yenta_set_socket then
just changes the irq routing to use the PCI interrupt but the first
functions irq handler is registered on an ISA interrupt.  boom.

Signed-off-by: Daniel Ritz <daniel.ritz@gmx.ch>
Cc: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] pcmcia/cs: fix possible missed wakeup
Daniel Ritz [Fri, 9 Sep 2005 20:03:23 +0000 (13:03 -0700)]
[PATCH] pcmcia/cs: fix possible missed wakeup

- thread_done should only be completed when the wait_queue is installed.

- all wake up conditions should be checked before schedule()

this fixes a hang of rmmod in the sequence modprobe yenta_socket; rmmod
yenta_socket as reported by Andreas Steinmetz.  w/o this rmmod yenta_socket
can hang on wait_for_completion() in pcmcia_unregister_socket()

Signed-off-by: Daniel Ritz <daniel.ritz@gmx.ch>
Cc: Dominik Brodowski <linux@brodo.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] yenta: share code with PCI core
Dominik Brodowski [Fri, 9 Sep 2005 20:03:23 +0000 (13:03 -0700)]
[PATCH] yenta: share code with PCI core

Share code between setup-bus.c and yenta_socket.c: use the write-out code of
resources to the bridge also in yenta_socket.c, as it provides useful debug
output.  In addition, it fixes the bug that the CPU-centric resource view
might need to be transferred to the PCI-centric view: setup-bus.c does that,
while yenta-socket.c did not.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] pcmcia: reduce ds.c stack footprint
Ingo Molnar [Fri, 9 Sep 2005 20:03:21 +0000 (13:03 -0700)]
[PATCH] pcmcia: reduce ds.c stack footprint

This patch reduces the stack footprint of pcmcia_device_query() from 416 bytes
to 36 bytes.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: ttusb-budget: use time_after_eq()
Marcelo Feitoza Parisi [Fri, 9 Sep 2005 20:03:15 +0000 (13:03 -0700)]
[PATCH] dvb: ttusb-budget: use time_after_eq()

Use of the time_after_eq() macro, defined at linux/jiffies.h, which deal
with wrapping correctly and are nicer to read.

Signed-off-by: Marcelo Feitoza Parisi <marcelo@feitoza.com.br>
Signed-off-by: Domen Puncer <domen@coderock.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: saa7146: i2c vs. sysfs fix
Philipp Matthias Hahn [Fri, 9 Sep 2005 20:03:13 +0000 (13:03 -0700)]
[PATCH] dvb: saa7146: i2c vs. sysfs fix

Integrate saa7146_i2c adapter into device model:
Moves entries from /sys/device/platform to /sys/device/pci*.

Signed-off-by: Philipp Hahn <pmhahn@titan.lahn.de>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: ttpci: add PCI ids for old Siemens/TT DVB-C card
Karl Herz [Fri, 9 Sep 2005 20:03:13 +0000 (13:03 -0700)]
[PATCH] dvb: ttpci: add PCI ids for old Siemens/TT DVB-C card

Add PCI-ids of Siemens-DVB-C card with Technotrend manufacturer id.

Signed-off-by: Karl Herz <karl.herz@gmx.de>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: ttpci: av7110: RC5+ remote control support
Oliver Endriss [Fri, 9 Sep 2005 20:03:12 +0000 (13:03 -0700)]
[PATCH] dvb: ttpci: av7110: RC5+ remote control support

Improved remote control support for av7110-based cards:
o extended rc5 protocol, firmware >= 0x2620 required
o key-up timer slightly adjusted
o completely moved remote control code to av7110_ir.c
o support for multiple ir receivers
o for now, all av7110 cards share the same ir configuration and event device

Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: av7110: conditionally disable workaround for broken firmware
Oliver Endriss [Fri, 9 Sep 2005 20:03:11 +0000 (13:03 -0700)]
[PATCH] dvb: av7110: conditionally disable workaround for broken firmware

Disable COM_IF_LOCK workaround for firmware > 0x261f.

Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: av7110: disable superflous firmware handshake
Johannes Stezenbach [Fri, 9 Sep 2005 20:03:10 +0000 (13:03 -0700)]
[PATCH] dvb: av7110: disable superflous firmware handshake

Disable superflous firmware handshake.

Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: budget-av: enable frontend on KNC1 Plus cards
Andrew de Quincey [Fri, 9 Sep 2005 20:03:09 +0000 (13:03 -0700)]
[PATCH] dvb: budget-av: enable frontend on KNC1 Plus cards

Enable frontend on KNC plus cards.

Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: budget-av: fixes for CI interface
Andrew de Quincey [Fri, 9 Sep 2005 20:03:08 +0000 (13:03 -0700)]
[PATCH] dvb: budget-av: fixes for CI interface

Fixes for CI interface.

Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: budget-ci: add support for TT DVB-C CI card
Andrew de Quincey [Fri, 9 Sep 2005 20:03:07 +0000 (13:03 -0700)]
[PATCH] dvb: budget-ci: add support for TT DVB-C CI card

Add support for TT DVB-C CI card.

Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: av7110: Siemens DVB-C analog video input support
thomas schorpp [Fri, 9 Sep 2005 20:03:06 +0000 (13:03 -0700)]
[PATCH] dvb: av7110: Siemens DVB-C analog video input support

Add support for analog video inputs (CVBS and Y/C) of the
analog module for the Siemens DVB-C card.

Signed-off-by: thomas schorpp <t.schorpp@gmx.de>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: cinergyT2: remote control fixes
Johannes Stezenbach [Fri, 9 Sep 2005 20:03:05 +0000 (13:03 -0700)]
[PATCH] dvb: cinergyT2: remote control fixes

IR RC fixes:
- EVIOCSKEYCODE is not supported by this driver, fix potential crash
  when it is used by not setting rc_input_dev->keycodesize
- fix key repeat handling (hopefully)
- reduce default poll internal to 50msec (necessary for key repeat handling)

Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: dst: Updated Documentation
Manu Abraham [Fri, 9 Sep 2005 20:03:04 +0000 (13:03 -0700)]
[PATCH] dvb: dst: Updated Documentation

Updated Documentation

Signed-off-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: dst: ci doc update
Manu Abraham [Fri, 9 Sep 2005 20:03:03 +0000 (13:03 -0700)]
[PATCH] dvb: dst: ci doc update

Updated documentation

Signed-off-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: dst: fix DVB-C tuning
Manu Abraham [Fri, 9 Sep 2005 20:03:02 +0000 (13:03 -0700)]
[PATCH] dvb: dst: fix DVB-C tuning

Fix BUG in DVB-C frequency setting.  Thanks to Peng Cao <caopeng75@gmail.com>

Signed-off-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: dst: identify boards
Manu Abraham [Fri, 9 Sep 2005 20:03:01 +0000 (13:03 -0700)]
[PATCH] dvb: dst: identify boards

Identify board properly: Add functions to retrieve MAC Address, FW details,
Card type and Vendor Information.

Signed-off-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: dst: dprrintk cleanup
Manu Abraham [Fri, 9 Sep 2005 20:03:00 +0000 (13:03 -0700)]
[PATCH] dvb: dst: dprrintk cleanup

Code Cleanup:
o Remove debug noise
o Remove debug module parameter
  debug level is achieved using the verbosity level
o Updated to kernel coding style
  (case labels should not be indented)

Signed-off-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: dst: remove unnecessary code
Manu Abraham [Fri, 9 Sep 2005 20:02:59 +0000 (13:02 -0700)]
[PATCH] dvb: dst: remove unnecessary code

Code Simplification: CA PMT object is not parsed in the driver anymore.

Signed-off-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: dst: fix symbol rate setting
Manu Abraham [Fri, 9 Sep 2005 20:02:58 +0000 (13:02 -0700)]
[PATCH] dvb: dst: fix symbol rate setting

Make the Symbolrate setting card specific.

Signed-off-by: Manu Abraham <manu@kromtek.com>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: nebula DigiTV nxt6000 fix
Stuart Auchterlonie [Fri, 9 Sep 2005 20:02:56 +0000 (13:02 -0700)]
[PATCH] dvb: nebula DigiTV nxt6000 fix

Fix bug in Nebula DigiTV frontend detection for nxt6000.

Signed-off-by: Stuart Auchterlonie <stuarta@squashedfrog.net>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: bt8xx: Nebula DigiTV mt352 support
David Johnson [Fri, 9 Sep 2005 20:02:55 +0000 (13:02 -0700)]
[PATCH] dvb: bt8xx: Nebula DigiTV mt352 support

Add support for Nebula DigiTV PCI cards with the MT352 frontend.

Signed-off-by: David Johnson <dj@david-web.co.uk>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: bt8xx: cleanup
David Johnson [Fri, 9 Sep 2005 20:02:54 +0000 (13:02 -0700)]
[PATCH] dvb: bt8xx: cleanup

Indentation fixes and remove unnecessary braces.

Signed-off-by: David Johnson <dj@david-web.co.uk>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: bt8xx: endianness fix
Johannes Stezenbach [Fri, 9 Sep 2005 20:02:53 +0000 (13:02 -0700)]
[PATCH] dvb: bt8xx: endianness fix

Endianness fix for risc DMA start address setting.  (reported by Stefan
Haubenthal/Peter Hettkamp)

Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: remove noisy debug print
Johannes Stezenbach [Fri, 9 Sep 2005 20:02:52 +0000 (13:02 -0700)]
[PATCH] dvb: remove noisy debug print

comment out noisy dprintk in dst_get_signal() (why are errors only visible
with debug on?  this needs to be cleaned up so we can disable debug by
default)

Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: usb: cxusb: fixes for new firmware
Patrick Boettcher [Fri, 9 Sep 2005 20:02:51 +0000 (13:02 -0700)]
[PATCH] dvb: usb: cxusb: fixes for new firmware

This patch changes two things:

1) a firmware update made by the vendor, which has to be done in Windows
   for now, changes the DVB-data-pipe from isochronous to bulk: it fixes the
   data distortions (and thus the video-distortions) in DVB-T mode; there is
   no backwards compatibility with the old firmware as it didn't work anyway

2) with the help of Steve Toth some reverse-engineered functionality is now
   named correctly, thank you

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: usb: white space cleanup
Patrick Boettcher [Fri, 9 Sep 2005 20:02:50 +0000 (13:02 -0700)]
[PATCH] dvb: usb: white space cleanup

white space cleanup

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: usb: digitv: support for nxt6000 demod
Svante Olofsson [Fri, 9 Sep 2005 20:02:48 +0000 (13:02 -0700)]
[PATCH] dvb: usb: digitv: support for nxt6000 demod

Add support for the NXT6000-based digitv-box.  Add .get_tune_settings callback
for the NXT6000 to have a min_tune_delay of 500ms.

Signed-off-by: Svante Olofsson <svante@agentum.com>
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: usb: core: change dvb_usb_device_init() API
Patrick Boettcher [Fri, 9 Sep 2005 20:02:47 +0000 (13:02 -0700)]
[PATCH] dvb: usb: core: change dvb_usb_device_init() API

Change the init call to optionally return the new dvb_usb_device directly.

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: usb: dtt200u: add proper device names
Patrick Boettcher [Fri, 9 Sep 2005 20:02:46 +0000 (13:02 -0700)]
[PATCH] dvb: usb: dtt200u: add proper device names

Added names for clones of the DVB-T stick.
Whitespace cleanups.

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: usb: dtt200u: copy frontend_ops before modifying
Ye Jianjun (Joey [Fri, 9 Sep 2005 20:02:44 +0000 (13:02 -0700)]
[PATCH] dvb: usb: dtt200u: copy frontend_ops before modifying

Fix: copy frontend_ops before modifying

Signed-off-by: Ye Jianjun (Joey) <joeyye@trident.com.cn>
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: usb: removed empty module_init/exit calls
Andreas Oberritter [Fri, 9 Sep 2005 20:02:43 +0000 (13:02 -0700)]
[PATCH] dvb: usb: removed empty module_init/exit calls

Removed empty module_init/exit calls.

Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: usb: dibusb: Kworld Xpert DVB-T USB2.0 support
Patrick Boettcher [Fri, 9 Sep 2005 20:02:42 +0000 (13:02 -0700)]
[PATCH] dvb: usb: dibusb: Kworld Xpert DVB-T USB2.0 support

Add USB IDs of the Kworld Xpert DVB-T USB2.0 (clone of the ADStech box).
Thanks to Marcus Hagn for testing.

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: usb: add TwinhanDTV StarBox support
Patrick Boettcher [Fri, 9 Sep 2005 20:02:41 +0000 (13:02 -0700)]
[PATCH] dvb: usb: add TwinhanDTV StarBox support

Add driver for the TwinhanDTV StarBox and clones.

Thanks to Ralph Metzler for his initial work on this box and thanks to Twinhan
for their support.

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: frontend: or51132: remove bogus optimization attempt
Mac Michaels [Fri, 9 Sep 2005 20:02:40 +0000 (13:02 -0700)]
[PATCH] dvb: frontend: or51132: remove bogus optimization attempt

This fix has also been applied to lgdt330x.  There is an optimization that
keeps track of the frequency tuned by the digital decoder.  The digital driver
does not set the frequency if it has not changed since it was tuned.  The
analog tuner driver knows nothing about the frequency saved by the digital
driver.  When the frequency is set using the video4linux code with tvtime, the
hardware get changed but the digital driver's state does not get updated.
Switch back to the same digital channel and the driver finds no change in
frequency so the tuner is not reset to the digital frequency.  The work around
is to remove the check and always set the tuner to the specified frequency.

Signed-off-by: Mac Michaels <wmichaels1@earthlink.net>
Signed-off-by: Michael Krufky <mkrufky@m1k.net>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: frontend: stv0297: QAM128 tuning improvement
Patrick Boettcher [Fri, 9 Sep 2005 20:02:38 +0000 (13:02 -0700)]
[PATCH] dvb: frontend: stv0297: QAM128 tuning improvement

while investigating the QAM_128-issue with the stv0297-driver for the
Cablestar (which is not the same as the one in dvb-kernel CVS, yet), I fixed
it, not by increasing the timeout, but by disabling the corner-detection for
QAM_128 and higher.

This patch has been tested on dvb-kernel cvs, and has been reported to work by
multiple users.  Some cards still need timeout increase on top of this patch.
This will be addressed later.

Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Michael Krufky <mkrufky@m1k.net>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: frontend: cx24110: clean up timeout handling.
Johannes Stezenbach [Fri, 9 Sep 2005 20:02:37 +0000 (13:02 -0700)]
[PATCH] dvb: frontend: cx24110: clean up timeout handling.

Clean up timeout handling.

Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: frontend: cx24110: another DiSEqC fix
Adam Szalkowski [Fri, 9 Sep 2005 20:02:35 +0000 (13:02 -0700)]
[PATCH] dvb: frontend: cx24110: another DiSEqC fix

Fix DiSEqC problems.

Signed-off-by: Adam Szalkowski <adam@szalkowski.de>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: frontend: cx24110: DiSEqC fix
Johannes Stezenbach [Fri, 9 Sep 2005 20:02:34 +0000 (13:02 -0700)]
[PATCH] dvb: frontend: cx24110: DiSEqC fix

Fix DiSEqC switching (one bug fix suggested by Peter Hettkamp, and one
experimentally determined msleep(30) suggested by Adam Szalkowski).

Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: frontend: ves1820: improve tuning
Johannes Stezenbach [Fri, 9 Sep 2005 20:02:34 +0000 (13:02 -0700)]
[PATCH] dvb: frontend: ves1820: improve tuning

Reset acgconf register after tuning to improve locking, as suggested by Marco
Schluessler.  Minor cleanups in ves1820_init().

Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: frontend: tda1004x: fix SNR reading
Andrew de Quincey [Fri, 9 Sep 2005 20:02:33 +0000 (13:02 -0700)]
[PATCH] dvb: frontend: tda1004x: fix SNR reading

Fix SNR reading

Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: frontend: stv0299: support reading both BER and UCBLOCKS
Andrew de Quincey [Fri, 9 Sep 2005 20:02:32 +0000 (13:02 -0700)]
[PATCH] dvb: frontend: stv0299: support reading both BER and UCBLOCKS

Allow the stv0299 to read the BER and UCBLOCKS.

Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: frontend: s5h1420: fixes
Andrew de Quincey [Fri, 9 Sep 2005 20:02:31 +0000 (13:02 -0700)]
[PATCH] dvb: frontend: s5h1420: fixes

Misc. fixes.

Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: frontend: stv0299: pass i2c bus to pll callback
Andreas Oberritter [Fri, 9 Sep 2005 20:02:30 +0000 (13:02 -0700)]
[PATCH] dvb: frontend: stv0299: pass i2c bus to pll callback

Pass a pointer to the i2c bus to the pll callbacks (stv0299 only).

It was not possible to tell which i2c bus should be used if an adapter has
multiple frontends on multiple i2c buses.

Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: frontend: mt352: fix signal strength reading
Barry Scott [Fri, 9 Sep 2005 20:02:29 +0000 (13:02 -0700)]
[PATCH] dvb: frontend: mt352: fix signal strength reading

Fix two problems with the signal strength value in the mt352.c frontend:
1. the 4 most significant bits are zeroed - shift and mask wrong way round
2. need to align the 12 bits from the registers at the top of the 16 bit
   returned value - otherwise the range is not 0 to 0xffff its 0xf000 to 0xffff

Signed-off-by: Barry Scott <barry.scott@onelan.co.uk>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: core: CI timeout fix
Dominique Dumont [Fri, 9 Sep 2005 20:02:27 +0000 (13:02 -0700)]
[PATCH] dvb: core: CI timeout fix

Patch from Dominique Dumont to get the SCM Red Viaccess CAM working with the
budget-ci.

Signed-off-by: Dominique Dumont <domi.dumont@free.fr>
Signed-off-by: Andrew de Quincey <adq_dvb@lidskialf.net>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: core: dvb_demux formatting fixes
Andreas Oberritter [Fri, 9 Sep 2005 20:02:26 +0000 (13:02 -0700)]
[PATCH] dvb: core: dvb_demux formatting fixes

Formatting fixes (Lindent + some handwork).

Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: core: dvb_demux: use INIT_LIST_HEAD
Andreas Oberritter [Fri, 9 Sep 2005 20:02:26 +0000 (13:02 -0700)]
[PATCH] dvb: core: dvb_demux: use INIT_LIST_HEAD

Use INIT_LIST_HEAD for frontend_list.

Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: core: dvb_demux: remove more unused cruft
Andreas Oberritter [Fri, 9 Sep 2005 20:02:24 +0000 (13:02 -0700)]
[PATCH] dvb: core: dvb_demux: remove more unused cruft

Removed more unused variables and constants.

Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: core: dvb_demux: remove unsused descramble callbacks
Andreas Oberritter [Fri, 9 Sep 2005 20:02:24 +0000 (13:02 -0700)]
[PATCH] dvb: core: dvb_demux: remove unsused descramble callbacks

Removed unused descramble_mac_address and descramble_section_payload callbacks.

Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: core: dvb_demux: remove unused cruft
Andreas Oberritter [Fri, 9 Sep 2005 20:02:23 +0000 (13:02 -0700)]
[PATCH] dvb: core: dvb_demux: remove unused cruft

Removed some useless functions and variables.

Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: core: dvb_demux: fix continuity counter error handling
Andreas Oberritter [Fri, 9 Sep 2005 20:02:22 +0000 (13:02 -0700)]
[PATCH] dvb: core: dvb_demux: fix continuity counter error handling

Don't return immediately from dvb_dmx_swfilter_section_packet() if CC is not
ok.  Otherwise a new feed drops all packets until the first packet with CC=0
arrives.

Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: core: glue code for DMX_GET_CAPS and DMX_SET_SOURCE
Andreas Oberritter [Fri, 9 Sep 2005 20:02:21 +0000 (13:02 -0700)]
[PATCH] dvb: core: glue code for DMX_GET_CAPS and DMX_SET_SOURCE

Glue code for DMX_GET_CAPS and DMX_SET_SOURCE ioctls.

Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: avoid building empty built-in.o
Johannes Stezenbach [Fri, 9 Sep 2005 20:02:20 +0000 (13:02 -0700)]
[PATCH] dvb: avoid building empty built-in.o

Don't build empty built-in.o when DVB/V4L is not configured.  Thanks to Sam
Ravnborg and Keith Owens.

Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: remove version.h dependencies
Olaf Hering [Fri, 9 Sep 2005 20:02:20 +0000 (13:02 -0700)]
[PATCH] dvb: remove version.h dependencies

Remove all #include <linux/version.h> and all references to LINUX_VERSION_CODE
and KERNEL_VERSION.  Based on patch by Olaf Hering.

Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] dvb: email address update
Johannes Stezenbach [Fri, 9 Sep 2005 20:02:19 +0000 (13:02 -0700)]
[PATCH] dvb: email address update

Update email address of Peter Hettkamp.

Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] fix reboot via keyboard controller reset
Truxton Fulton [Fri, 9 Sep 2005 20:02:18 +0000 (13:02 -0700)]
[PATCH] fix reboot via keyboard controller reset

I have a system (Biostar IDEQ210M mini-pc with a VIA chipset) which will
not reboot unless a keyboard is plugged in to it.  I have tried all
combinations of the kernel "reboot=x,y" flags to no avail.  Rebooting by
any method will leave the system in a wedged state (at the "Restarting
system" message).

I finally tracked the problem down to the machine's refusal to fully reboot
unless the keyboard controller status register had bit 2 set.  This is the
"System flag" which when set, indicates successful completion of the
keyboard controller self-test (Basic Assurance Test, BAT).

I suppose that something is trying to protect against sporadic reboots
unless the keyboard controller is in a good state (a keyboard is present),
but I need this machine to be headless.

I found that setting the system flag (via the command byte) before giving
the "pulse reset line" command will allow the reboot to proceed.  The patch
is simple, and I think it should be fine for everybody whether they have
this type of machine or not.  This affects the "hard" reboot (as done when
the kernel boot flags "reboot=c,h" are used).

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] synclinkmp.c: fix async internal loopback
Paul Fulghum [Fri, 9 Sep 2005 20:02:17 +0000 (13:02 -0700)]
[PATCH] synclinkmp.c: fix async internal loopback

Fix async internal loopback by not using enable_loopback function which
reprograms clocking and should only be used for hdlc mode.

Signed-off-by: Paul Fulghum <paulkf@microgate.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] synclinkmp.c: add statistics clear
Paul Fulghum [Fri, 9 Sep 2005 20:02:16 +0000 (13:02 -0700)]
[PATCH] synclinkmp.c: add statistics clear

Add ability to clear statistics.

Signed-off-by: Paul Fulghum <paulkf@microgate.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] synclinkmp.c: disable burst transfers
Paul Fulghum [Fri, 9 Sep 2005 20:02:15 +0000 (13:02 -0700)]
[PATCH] synclinkmp.c: disable burst transfers

Disable burst transfers on adapter local bus.  Hardware feature does not work
on latest version of adapter.

Signed-off-by: Paul Fulghum <paulkf@microgate.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] synclinkmp.c: fix double mapping of signals
Paul Fulghum [Fri, 9 Sep 2005 20:02:14 +0000 (13:02 -0700)]
[PATCH] synclinkmp.c: fix double mapping of signals

Serial signals were incorrectly mapped twice to events.

Signed-off-by: Paul Fulghum <paulkf@microgate.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] synclink.c: add loopback to async mode
Paul Fulghum [Fri, 9 Sep 2005 20:02:14 +0000 (13:02 -0700)]
[PATCH] synclink.c: add loopback to async mode

Add internal loopback support for asynchronous mode operation.

Signed-off-by: Paul Fulghum <paulkf@microgate.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] synclink.c: add clear stats
Paul Fulghum [Fri, 9 Sep 2005 20:02:13 +0000 (13:02 -0700)]
[PATCH] synclink.c: add clear stats

Add the ability to clear statistics.

Signed-off-by: Paul Fulghum <paulkf@microgate.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] synclink.c: compiler optimisation fix
Paul Fulghum [Fri, 9 Sep 2005 20:02:12 +0000 (13:02 -0700)]
[PATCH] synclink.c: compiler optimisation fix

Make some fields of DMA descriptor volatile to prevent compiler optimizations.

Signed-off-by: Paul Fulghum <paulkf@microgate.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] deadline: clean up question mark operator
Andrew Morton [Fri, 9 Sep 2005 20:02:12 +0000 (13:02 -0700)]
[PATCH] deadline: clean up question mark operator

That ?: trick gives us the creeps.

Cc: Jens Axboe <axboe@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] remove unnecessary handle_IRQ_event() prototypes
Kenji Kaneshige [Fri, 9 Sep 2005 20:02:11 +0000 (13:02 -0700)]
[PATCH] remove unnecessary handle_IRQ_event() prototypes

The function prototype for handle_IRQ_event() in a few architctures is not
needed because they use GENERIC_HARDIRQ.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] fix for cpusets minor problem
KUROSAWA Takahiro [Fri, 9 Sep 2005 20:02:10 +0000 (13:02 -0700)]
[PATCH] fix for cpusets minor problem

This patch fixes minor problem that the CPUSETS have when files in the
cpuset filesystem are read after lseek()-ed beyond the EOF.

Signed-off-by: KUROSAWA Takahiro <kurosawa@valinux.co.jp>
Acked-by: Paul Jackson <pj@sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] aio: kiocb locking to serialise retry and cancel
Benjamin LaHaise [Fri, 9 Sep 2005 20:02:09 +0000 (13:02 -0700)]
[PATCH] aio: kiocb locking to serialise retry and cancel

Implement a per-kiocb lock to serialise retry operations and cancel.  This
is done using wait_on_bit_lock() on the KIF_LOCKED bit of kiocb->ki_flags.
Also, make the cancellation path lock the kiocb and subsequently release
all references to it if the cancel was successful.  This version includes a
fix for the deadlock with __aio_run_iocbs.

Signed-off-by: Benjamin LaHaise <bcrl@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] change io_cancel return code for no cancel case
Wendy Cheng [Fri, 9 Sep 2005 20:02:08 +0000 (13:02 -0700)]
[PATCH] change io_cancel return code for no cancel case

Note that other than few exceptions, most of the current filesystem and/or
drivers do not have aio cancel specifically defined (kiob->ki_cancel field
is mostly NULL).  However, sys_io_cancel system call universally sets
return code to -EAGAIN.  This gives applications a wrong impression that
this call is implemented but just never works.  We have customer inquires
about this issue.

Changed by Benjamin LaHaise to EINVAL instead of ENOSYS

Signed-off-by: S. Wendy Cheng <wcheng@redhat.com>
Acked-by: Benjamin LaHaise <bcrl@kvack.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] cs89x0: add netpoll support
Deepak Saxena [Fri, 9 Sep 2005 20:02:07 +0000 (13:02 -0700)]
[PATCH] cs89x0: add netpoll support

Signed-off-by: Deepak Saxena <dsaxena@plexity.net>
Cc: Matt Mackall <mpm@selenic.com>
Cc: Jeff Garzik <jgarzik@pobox.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] bfs: fix endianness, signedness; add trivial bugfix
Andrew Stribblehill [Fri, 9 Sep 2005 20:02:04 +0000 (13:02 -0700)]
[PATCH] bfs: fix endianness, signedness; add trivial bugfix

* Makes BFS code endianness-clean.

* Fixes some signedness warnings.

* Fixes a problem in fs/bfs/inode.c:164 where inodes not synced to disk
  don't get fully marked as clean.  Here's how to reproduce it:

# mount -o loop -t bfs /bfs.img /mnt
# df -i /mnt
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/bfs.img                  48       1      47    3% /mnt
# df -k /mnt
Filesystem           1K-blocks      Used Available Use% Mounted on
/bfs.img                   512         5       508   1% /mnt
# cp 60k-archive.zip /mnt/mt.zip
# df -k /mnt
Filesystem           1K-blocks      Used Available Use% Mounted on
/bfs.img                   512        65       447  13% /mnt
# df -i /mnt
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/bfs.img                  48       2      46    5% /mnt
# rm /mnt/mt.zip
# echo $?
0

 [If the unlink happens before the buffers flush, the following happens:]

# df -i /mnt
Filesystem            Inodes   IUsed   IFree IUse% Mounted on
/bfs.img                  48       2      46    5% /mnt
# df -k /mnt
Filesystem           1K-blocks      Used Available Use% Mounted on
/bfs.img                   512        65       447  13% /mnt

 fs/bfs/bfs.h           |    1

Signed-off-by: Andrew Stribblehill <ads@wompom.org>
Cc: <tigran@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Prefetch kernel stacks to speed up context switch
Chen, Kenneth W [Fri, 9 Sep 2005 20:02:02 +0000 (13:02 -0700)]
[PATCH] Prefetch kernel stacks to speed up context switch

For architecture like ia64, the switch stack structure is fairly large
(currently 528 bytes).  For context switch intensive application, we found
that significant amount of cache misses occurs in switch_to() function.
The following patch adds a hook in the schedule() function to prefetch
switch stack structure as soon as 'next' task is determined.  This allows
maximum overlap in prefetch cache lines for that structure.

Signed-off-by: Ken Chen <kenneth.w.chen@intel.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: "Luck, Tony" <tony.luck@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] fix disassociate_ctty vs. fork race
Jason Baron [Fri, 9 Sep 2005 20:02:01 +0000 (13:02 -0700)]
[PATCH] fix disassociate_ctty vs. fork race

Race is as follows. Process A forks process B, both being part of the same
session. Then, A calls disassociate_ctty while B forks C:

A B
==== ====
fork()
  copy_signal()
dissasociate_ctty() ....
  attach_pid(p, PIDTYPE_SID, p->signal->session);

Now, C can have current->signal->tty pointing to a freed tty structure, as
it hasn't yet been added to the session group (to have its controlling tty
cleared on the diassociate_ctty() call).

This has shown up as an oops but could be even more serious.  I haven't
tried to create a test case, but a customer has verified that the patch
below resolves the issue, which was occuring quite frequently.  I'll try
and post the test case if i can.

The patch simply checks for a NULL tty *after* it has been attached to the
proper session group and clears it as necessary.  Alternatively, we could
simply do the tty assignment after the the process is added to the proper
session group.

Signed-off-by: Jason Baron <jbaron@redhat.com>
Cc: Roland McGrath <roland@redhat.com>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] autofs: fix "busy inodes after umount..."
Alexander Krizhanovsky [Fri, 9 Sep 2005 20:01:59 +0000 (13:01 -0700)]
[PATCH] autofs: fix "busy inodes after umount..."

This patch for old autofs (version 3) cleans dentries which are not putted
after killing the automount daemon (it's analogue of recent patch for
autofs4).

Signed-off-by: Alexander Krizhanovsky <klx@yandex.ru>
Cc: Ian Kent <raven@themaw.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] vga text console and stty cols/rows
Samuel Thibault [Fri, 9 Sep 2005 20:01:58 +0000 (13:01 -0700)]
[PATCH] vga text console and stty cols/rows

Some people use 66-cells braille devices for reading the console, and hence
would like to reduce the width of the screen by using:

stty cols 66

However, the vga text console doesn't behave correctly: the 14 first
characters of the second line are put on the right of the first line and so
forth.

Here is a patch to correct that.  It corrects the disp_end and offset
registers of the vga board on console resize and console switch.

On usual screens, you then correctly get a right and/or bottom blank
margin.  On some laptop panels, the output is resized so that text actually
gets magnified, which can be great for some people (see
http://dept-info.labri.fr/~thibault/ls.jpg ).

Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] pty_chars_in_buffer oops fix
Jason Baron [Fri, 9 Sep 2005 20:01:57 +0000 (13:01 -0700)]
[PATCH] pty_chars_in_buffer oops fix

The idea of this patch is to lock both sides of a ptmx/pty pair during line
discipline changing.  This is needed to ensure that say a poll on one side of
the pty doesn't occur while the line discipline is actively being changed.
This resulted in an oops reported on lkml, see:

http://marc.theaimsgroup.com/?l=linux-kernel&m=111342171410005&w=2

A 'hacky' approach was previously implmemented which served to eliminate the
poll vs.  line discipline changing race.  However, this patch takes a more
general approach to the issue.  The patch only adds locking on a less often
used path, the line-discipline changing path, as opposed to locking the
ptmx/pty pair on read/write/poll paths.

The patch below, takes both ldisc locks in either order b/c the locks are both
taken under the same spinlock().  I thought about locking the ptmx/pty
separately, such as master always first but that introduces a 3 way deadlock.
For example, process 1 does a blocking read on the slave side.  Then, process
2 does an ldisc change on the slave side, which acquires the master ldisc lock
but not the slave's.  Finally, process 3 does a write which blocks on the
process 2's ldisc reference.

This patch does introduce some changes in semantics.  For example, a line
discipline change on side 'a' of a ptmx/pty pair, will now wait for a
read/write to complete on the other side, or side 'b'.  The current behavior
is to simply wait for any read/writes on only side 'a', not both sides 'a' and
'b'.  I think this behavior makes sense, but I wanted to point it out.

I've tested the patch with a bunch of read/write/poll while changing the line
discipline out from underneath.

This patch obviates the need for the above "hide the problem" patch.

Signed-off-by: Jason Baron <jbaron@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] alpha: process_reloc_for_got confuses r_offset and r_addend
Chaskiel Grundman [Fri, 9 Sep 2005 20:01:54 +0000 (13:01 -0700)]
[PATCH] alpha: process_reloc_for_got confuses r_offset and r_addend

arch/alpha/kernel/module.c:process_reloc_for_got(), which figures out how big
the .got section for a module should be, appears to be confusing r_offset (the
file offset that the relocation needs to be applied to) with r_addend (the
offset of the relocation's actual target address from the address of the
relocation's symbol).  Because of this, one .got entry is allocated for each
relocation instead of one each unique symbol/addend.

In the module I am working with, this causes the .got section to be almost 10
times larger than it needs to be (75544 bytes instead of 7608 bytes).  As the
.got is accessed with global-pointer-relative instructions, it needs to be
within the 64k gp "zone", and a 75544 byte .got clearly does not fit.  The
result of this is that relocation overflows are detected during module load
and the load is aborted.

Change struct got_entry/process_reloc_for_got to fix this.

Acked-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] x86_64: Don't call enforce_max_cpus when hotplug is enabled
Ashok Raj [Fri, 9 Sep 2005 20:01:53 +0000 (13:01 -0700)]
[PATCH] x86_64: Don't call enforce_max_cpus when hotplug is enabled

enforce_max_cpus nukes out cpu_present_map and cpu_possible_map making it
impossible to add new cpus in the system.  Since it doesnt provide any
additional value apart this call and reference is removed.

Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Acked-by: Andi Kleen <ak@muc.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] x86_64: Don't do broadcast IPIs when hotplug is enabled in flat mode.
Ashok Raj [Fri, 9 Sep 2005 20:01:52 +0000 (13:01 -0700)]
[PATCH] x86_64: Don't do broadcast IPIs when hotplug is enabled in flat mode.

The use of non-shortcut version of routines breaking CPU hotplug.  The option
to select this via cmdline also is deleted with the physflat patch, hence
directly placing this code under CONFIG_HOTPLUG_CPU.

We dont want to use broadcast mode IPI's when hotplug is enabled.  This causes
bad effects in send IPI to a cpu that is offline which can trip when the cpu
is in the process of being kicked alive.

Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Acked-by: Andi Kleen <ak@muc.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] i386: seccomp fix for auditing/ptrace
Andrea Arcangeli [Fri, 9 Sep 2005 20:01:51 +0000 (13:01 -0700)]
[PATCH] i386: seccomp fix for auditing/ptrace

This is the same issue as ppc64 before, when returning to userland we
shouldn't re-compute the seccomp check or the task could be killed during
sigreturn when orig_eax is overwritten by the sigreturn syscall.  This was
found by Roland.

This was harmless from a security standpoint, but some i686 users reported
failures with auditing enabled system wide (some distro surprisingly makes
it the default) and I reproduced it too by keeping the whole workload under
strace -f.

Patch is tested and works for me under strace -f.

nobody@athlon:~/cpushare> strace -o /tmp/o -f python seccomp_test.py
make: Nothing to be done for `seccomp_test'.
Starting computing some malicious bytecode
init
load
start
stop
receive_data failure
kill
exit_code 0 signal 9
The malicious bytecode has been killed successfully by seccomp
Starting computing some safe bytecode
init
load
start
stop
174 counts
kill
exit_code 0 signal 0
The seccomp_test.py completed successfully, thank you for testing.

(akpm: collaterally cleaned up a bit of do_syscall_trace() too)

Signed-off-by: Andrea Arcangeli <andrea@cpushare.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] mips: add TANBAC TB0287 support
Yoichi Yuasa [Fri, 9 Sep 2005 20:01:49 +0000 (13:01 -0700)]
[PATCH] mips: add TANBAC TB0287 support

Add TANBAC TB0287 support.

Signed-off-by: Yoichi Yuasa <yuasa@hh.iij4u.or.jp>
Cc: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ppc32: Kill PVR_440* defines
Tom Rini [Fri, 9 Sep 2005 20:01:48 +0000 (13:01 -0700)]
[PATCH] ppc32: Kill PVR_440* defines

The following patch changes the usages of PVR_440* into strcmp's with the
cpu_name field, and removes the defines altogether.  The Ebony portion was
briefly tested long ago.  One benefit of moving from PVR-tests to string
tests in general is that not all CPUs can be on and be able to do this type
of comparison.

See http://patchwork.ozlabs.org/linuxppc/patch?id=1250 for the original
thread.

Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ppc32: In the boot code, don't rely on BASE_BAUD directly
Tom Rini [Fri, 9 Sep 2005 20:01:47 +0000 (13:01 -0700)]
[PATCH] ppc32: In the boot code, don't rely on BASE_BAUD directly

Modifies serial_init to get base baud rate from the rs_table entry instead
of BAUD_BASE.  This patch eliminates duplication between the
SERIAL_PORT_DFNS macro and BAUD_BASE.  Without the patch, if a port set the
baud rate in SERIAL_PORT_DFNS, but did not update BASE_BAUD, the BASE_BAUD
value would still be used.

Signed-off-by: Grant Likely <grant.likely@gdcanada.com>
Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Cc: Russell King <rmk@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ppc32: Correct an instruction in the boot code
Frank van Maarseveen [Fri, 9 Sep 2005 20:01:46 +0000 (13:01 -0700)]
[PATCH] ppc32: Correct an instruction in the boot code

In the flush and invalidate bootcode on PPC4xx we were accidentally using
the wrong instruction.  Use cmplw, which reads from a register like we
want.

Signed-off-by: Tom Rini <trini@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ppc32: make perfmon.o CONFIG_E500 specific
Marcelo Tosatti [Fri, 9 Sep 2005 20:01:45 +0000 (13:01 -0700)]
[PATCH] ppc32: make perfmon.o CONFIG_E500 specific

Subject says it all, there is no need to link perfmon.o on
sub-architectures other than CONFIG_E500.

Signed-off-by: Marcelo Tosatti <marcelo.tosatti@cyclades.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] remove the inode_post_link and inode_post_rename LSM hooks
Stephen Smalley [Fri, 9 Sep 2005 20:01:45 +0000 (13:01 -0700)]
[PATCH] remove the inode_post_link and inode_post_rename LSM hooks

This patch removes the inode_post_link and inode_post_rename LSM hooks as
they are unused (and likely useless).

Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] Remove security_inode_post_create/mkdir/symlink/mknod hooks
Stephen Smalley [Fri, 9 Sep 2005 20:01:44 +0000 (13:01 -0700)]
[PATCH] Remove security_inode_post_create/mkdir/symlink/mknod hooks

This patch removes the inode_post_create/mkdir/mknod/symlink LSM hooks as
they are obsoleted by the new inode_init_security hook that enables atomic
inode security labeling.

If anyone sees any reason to retain these hooks, please speak now.  Also,
is anyone using the post_rename/link hooks; if not, those could also be
removed.

Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] tmpfs: Enable atomic inode security labeling
Stephen Smalley [Fri, 9 Sep 2005 20:01:43 +0000 (13:01 -0700)]
[PATCH] tmpfs: Enable atomic inode security labeling

This patch modifies tmpfs to call the inode_init_security LSM hook to set
up the incore inode security state for new inodes before the inode becomes
accessible via the dcache.

As there is no underlying storage of security xattrs in this case, it is
not necessary for the hook to return the (name, value, len) triple to the
tmpfs code, so this patch also modifies the SELinux hook function to
correctly handle the case where the (name, value, len) pointers are NULL.

The hook call is needed in tmpfs in order to support proper security
labeling of tmpfs inodes (e.g.  for udev with tmpfs /dev in Fedora).  With
this change in place, we should then be able to remove the
security_inode_post_create/mkdir/...  hooks safely.

Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Cc: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ext3: Enable atomic inode security labeling
Stephen Smalley [Fri, 9 Sep 2005 20:01:41 +0000 (13:01 -0700)]
[PATCH] ext3: Enable atomic inode security labeling

This patch modifies ext3 to call the inode_init_security LSM hook to obtain
the security attribute for a newly created inode and to set the resulting
attribute on the new inode as part of the same transaction.  This parallels
the existing processing for setting ACLs on newly created inodes.

Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] ext2: Enable atomic inode security labeling
Stephen Smalley [Fri, 9 Sep 2005 20:01:39 +0000 (13:01 -0700)]
[PATCH] ext2: Enable atomic inode security labeling

This patch modifies ext2 to call the inode_init_security LSM hook to obtain
the security attribute for a newly created inode and to set the resulting
attribute on the new inode.  This parallels the existing processing for
setting ACLs on newly created inodes.

Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
19 years ago[PATCH] security: enable atomic inode security labeling
Stephen Smalley [Fri, 9 Sep 2005 20:01:35 +0000 (13:01 -0700)]
[PATCH] security: enable atomic inode security labeling

The following patch set enables atomic security labeling of newly created
inodes by altering the fs code to invoke a new LSM hook to obtain the security
attribute to apply to a newly created inode and to set up the incore inode
security state during the inode creation transaction.  This parallels the
existing processing for setting ACLs on newly created inodes.  Otherwise, it
is possible for new inodes to be accessed by another thread via the dcache
prior to complete security setup (presently handled by the
post_create/mkdir/...  LSM hooks in the VFS) and a newly created inode may be
left unlabeled on the disk in the event of a crash.  SELinux presently works
around the issue by ensuring that the incore inode security label is
initialized to a special SID that is inaccessible to unprivileged processes
(in accordance with policy), thereby preventing inappropriate access but
potentially causing false denials on legitimate accesses.  A simple test
program demonstrates such false denials on SELinux, and the patch solves the
problem.  Similar such false denials have been encountered in real
applications.

This patch defines a new inode_init_security LSM hook to obtain the security
attribute to apply to a newly created inode and to set up the incore inode
security state for it, and adds a corresponding hook function implementation
to SELinux.

Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>