Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 84090
b: refs/heads/master
c: 3620f2f
h: refs/heads/master
v: v3
  • Loading branch information
Frank Seidel authored and Len Brown committed Dec 8, 2007
1 parent e745b61 commit 7b242bd
Show file tree
Hide file tree
Showing 7,500 changed files with 300,202 additions and 564,793 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: dd07a8db7283f52f347aee468007556944b5b393
refs/heads/master: 3620f2f2f39e7870cf1a4fb2e34063a142f28716
1 change: 0 additions & 1 deletion trunk/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@
*.i
*.lst
*.symtypes
*.order

#
# Top-level generic files
Expand Down
23 changes: 4 additions & 19 deletions trunk/CREDITS
Original file line number Diff line number Diff line change
Expand Up @@ -508,8 +508,12 @@ D: REINER SCT cyberJack pinpad/e-com USB chipcard reader driver
S: Germany

N: Adrian Bunk
E: bunk@stusta.de
P: 1024D/4F12B400 B29C E71E FE19 6755 5C8A 84D4 99FC EA98 4F12 B400
D: misc kernel hacking and testing
S: Grasmeierstrasse 11
S: 80805 Muenchen
S: Germany

N: Ray Burr
E: ryb@nightmare.com
Expand Down Expand Up @@ -1120,9 +1124,6 @@ S: 1150 Ringwood Court
S: San Jose, California 95131
S: USA

N: Adam Fritzler
E: mid@zigamorph.net

N: Fernando Fuganti
E: fuganti@conectiva.com.br
E: fuganti@netbank.com.br
Expand Down Expand Up @@ -1352,14 +1353,6 @@ S: Gen Stedmanstraat 212
S: 5623 HZ Eindhoven
S: The Netherlands

N: Oliver Hartkopp
E: oliver.hartkopp@volkswagen.de
W: http://www.volkswagen.de
D: Controller Area Network (network layer core)
S: Brieffach 1776
S: 38436 Wolfsburg
S: Germany

N: Andrew Haylett
E: ajh@primag.co.uk
D: Selection mechanism
Expand Down Expand Up @@ -3313,14 +3306,6 @@ S: Universit=E9 de Rennes I
S: F-35042 Rennes Cedex
S: France

N: Urs Thuermann
E: urs.thuermann@volkswagen.de
W: http://www.volkswagen.de
D: Controller Area Network (network layer core)
S: Brieffach 1776
S: 38436 Wolfsburg
S: Germany

N: Jon Tombs
E: jon@gte.esi.us.es
W: http://www.esi.us.es/~jon
Expand Down
4 changes: 3 additions & 1 deletion trunk/Documentation/00-INDEX
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ firmware_class/
- request_firmware() hotplug interface info.
floppy.txt
- notes and driver options for the floppy disk driver.
frv/
fujitsu/
- Fujitsu FR-V Linux documentation.
gpio.txt
- overview of GPIO (General Purpose Input/Output) access conventions.
Expand Down Expand Up @@ -364,6 +364,8 @@ sharedsubtree.txt
- a description of shared subtrees for namespaces.
smart-config.txt
- description of the Smart Config makefile feature.
smp.txt
- a few notes on symmetric multi-processing.
sony-laptop.txt
- Sony Notebook Control Driver (SNC) Readme.
sonypi.txt
Expand Down
33 changes: 0 additions & 33 deletions trunk/Documentation/ABI/testing/sysfs-bus-usb
Original file line number Diff line number Diff line change
Expand Up @@ -52,36 +52,3 @@ Description:
facility is inherently dangerous, it is disabled by default
for all devices except hubs. For more information, see
Documentation/usb/persist.txt.

What: /sys/bus/usb/device/.../power/connected_duration
Date: January 2008
KernelVersion: 2.6.25
Contact: Sarah Sharp <sarah.a.sharp@intel.com>
Description:
If CONFIG_PM and CONFIG_USB_SUSPEND are enabled, then this file
is present. When read, it returns the total time (in msec)
that the USB device has been connected to the machine. This
file is read-only.
Users:
PowerTOP <power@bughost.org>
http://www.lesswatts.org/projects/powertop/

What: /sys/bus/usb/device/.../power/active_duration
Date: January 2008
KernelVersion: 2.6.25
Contact: Sarah Sharp <sarah.a.sharp@intel.com>
Description:
If CONFIG_PM and CONFIG_USB_SUSPEND are enabled, then this file
is present. When read, it returns the total time (in msec)
that the USB device has been active, i.e. not in a suspended
state. This file is read-only.

Tools can use this file and the connected_duration file to
compute the percentage of time that a device has been active.
For example,
echo $((100 * `cat active_duration` / `cat connected_duration`))
will give an integer percentage. Note that this does not
account for counter wrap.
Users:
PowerTOP <power@bughost.org>
http://www.lesswatts.org/projects/powertop/
14 changes: 0 additions & 14 deletions trunk/Documentation/ABI/testing/sysfs-kernel-uids

This file was deleted.

39 changes: 11 additions & 28 deletions trunk/Documentation/BUG-HUNTING
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ Finding it the old way

[Sat Mar 2 10:32:33 PST 1996 KERNEL_BUG-HOWTO lm@sgi.com (Larry McVoy)]

This is how to track down a bug if you know nothing about kernel hacking.
This is how to track down a bug if you know nothing about kernel hacking.
It's a brute force approach but it works pretty well.

You need:
Expand All @@ -66,12 +66,12 @@ You will then do:

. Rebuild a revision that you believe works, install, and verify that.
. Do a binary search over the kernels to figure out which one
introduced the bug. I.e., suppose 1.3.28 didn't have the bug, but
introduced the bug. I.e., suppose 1.3.28 didn't have the bug, but
you know that 1.3.69 does. Pick a kernel in the middle and build
that, like 1.3.50. Build & test; if it works, pick the mid point
between .50 and .69, else the mid point between .28 and .50.
. You'll narrow it down to the kernel that introduced the bug. You
can probably do better than this but it gets tricky.
can probably do better than this but it gets tricky.

. Narrow it down to a subdirectory

Expand All @@ -81,27 +81,27 @@ You will then do:
directories:

Copy the non-working directory next to the working directory
as "dir.63".
as "dir.63".
One directory at time, try moving the working directory to
"dir.62" and mv dir.63 dir"time, try
"dir.62" and mv dir.63 dir"time, try

mv dir dir.62
mv dir.63 dir
find dir -name '*.[oa]' -print | xargs rm -f

And then rebuild and retest. Assuming that all related
changes were contained in the sub directory, this should
isolate the change to a directory.
changes were contained in the sub directory, this should
isolate the change to a directory.

Problems: changes in header files may have occurred; I've
found in my case that they were self explanatory - you may
found in my case that they were self explanatory - you may
or may not want to give up when that happens.

. Narrow it down to a file

- You can apply the same technique to each file in the directory,
hoping that the changes in that file are self contained.

hoping that the changes in that file are self contained.
. Narrow it down to a routine

- You can take the old file and the new file and manually create
Expand Down Expand Up @@ -130,7 +130,7 @@ You will then do:
that makes the difference.

Finally, you take all the info that you have, kernel revisions, bug
description, the extent to which you have narrowed it down, and pass
description, the extent to which you have narrowed it down, and pass
that off to whomever you believe is the maintainer of that section.
A post to linux.dev.kernel isn't such a bad idea if you've done some
work to narrow it down.
Expand Down Expand Up @@ -214,23 +214,6 @@ And recompile the kernel with CONFIG_DEBUG_INFO enabled:
gdb vmlinux
(gdb) p vt_ioctl
(gdb) l *(0x<address of vt_ioctl> + 0xda8)
or, as one command
(gdb) l *(vt_ioctl + 0xda8)

If you have a call trace, such as :-
>Call Trace:
> [<ffffffff8802c8e9>] :jbd:log_wait_commit+0xa3/0xf5
> [<ffffffff810482d9>] autoremove_wake_function+0x0/0x2e
> [<ffffffff8802770b>] :jbd:journal_stop+0x1be/0x1ee
> ...
this shows the problem in the :jbd: module. You can load that module in gdb
and list the relevant code.
gdb fs/jbd/jbd.ko
(gdb) p log_wait_commit
(gdb) l *(0x<address> + 0xa3)
or
(gdb) l *(log_wait_commit + 0xa3)


Another very useful option of the Kernel Hacking section in menuconfig is
Debug memory allocations. This will help you see whether data has been
Expand Down
2 changes: 1 addition & 1 deletion trunk/Documentation/DocBook/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ DOCBOOKS := wanbook.xml z8530book.xml mcabook.xml videobook.xml \
procfs-guide.xml writing_usb_driver.xml \
kernel-api.xml filesystems.xml lsm.xml usb.xml \
gadget.xml libata.xml mtdnand.xml librs.xml rapidio.xml \
genericirq.xml s390-drivers.xml uio-howto.xml scsi.xml
genericirq.xml s390-drivers.xml uio-howto.xml

###
# The build process is as follows (targets):
Expand Down
10 changes: 2 additions & 8 deletions trunk/Documentation/DocBook/kernel-api.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,6 @@ X!Ilib/string.c
!Emm/vmalloc.c
!Imm/page_alloc.c
!Emm/mempool.c
!Emm/dmapool.c
!Emm/page-writeback.c
!Emm/truncate.c
</sect1>
Expand Down Expand Up @@ -372,6 +371,7 @@ X!Iinclude/linux/device.h
!Edrivers/base/class.c
!Edrivers/base/firmware_class.c
!Edrivers/base/transport_class.c
!Edrivers/base/dmapool.c
<!-- Cannot be included, because
attribute_container_add_class_device_adapter
and attribute_container_classdev_to_container
Expand Down Expand Up @@ -419,13 +419,7 @@ X!Edrivers/pnp/system.c

<chapter id="blkdev">
<title>Block Devices</title>
!Eblock/blk-core.c
!Eblock/blk-map.c
!Iblock/blk-sysfs.c
!Eblock/blk-settings.c
!Eblock/blk-exec.c
!Eblock/blk-barrier.c
!Eblock/blk-tag.c
!Eblock/ll_rw_blk.c
</chapter>

<chapter id="chrdev">
Expand Down
32 changes: 16 additions & 16 deletions trunk/Documentation/DocBook/kernel-locking.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -717,15 +717,15 @@ used, and when it gets full, throws out the least used one.
<para>
For our first example, we assume that all operations are in user
context (ie. from system calls), so we can sleep. This means we can
use a mutex to protect the cache and all the objects within
use a semaphore to protect the cache and all the objects within
it. Here's the code:
</para>

<programlisting>
#include &lt;linux/list.h&gt;
#include &lt;linux/slab.h&gt;
#include &lt;linux/string.h&gt;
#include &lt;linux/mutex.h&gt;
#include &lt;asm/semaphore.h&gt;
#include &lt;asm/errno.h&gt;

struct object
Expand All @@ -737,7 +737,7 @@ struct object
};

/* Protects the cache, cache_num, and the objects within it */
static DEFINE_MUTEX(cache_lock);
static DECLARE_MUTEX(cache_lock);
static LIST_HEAD(cache);
static unsigned int cache_num = 0;
#define MAX_CACHE_SIZE 10
Expand Down Expand Up @@ -789,31 +789,31 @@ int cache_add(int id, const char *name)
obj-&gt;id = id;
obj-&gt;popularity = 0;

mutex_lock(&amp;cache_lock);
down(&amp;cache_lock);
__cache_add(obj);
mutex_unlock(&amp;cache_lock);
up(&amp;cache_lock);
return 0;
}

void cache_delete(int id)
{
mutex_lock(&amp;cache_lock);
down(&amp;cache_lock);
__cache_delete(__cache_find(id));
mutex_unlock(&amp;cache_lock);
up(&amp;cache_lock);
}

int cache_find(int id, char *name)
{
struct object *obj;
int ret = -ENOENT;

mutex_lock(&amp;cache_lock);
down(&amp;cache_lock);
obj = __cache_find(id);
if (obj) {
ret = 0;
strcpy(name, obj-&gt;name);
}
mutex_unlock(&amp;cache_lock);
up(&amp;cache_lock);
return ret;
}
</programlisting>
Expand Down Expand Up @@ -853,7 +853,7 @@ The change is shown below, in standard patch format: the
int popularity;
};

-static DEFINE_MUTEX(cache_lock);
-static DECLARE_MUTEX(cache_lock);
+static spinlock_t cache_lock = SPIN_LOCK_UNLOCKED;
static LIST_HEAD(cache);
static unsigned int cache_num = 0;
Expand All @@ -870,22 +870,22 @@ The change is shown below, in standard patch format: the
obj-&gt;id = id;
obj-&gt;popularity = 0;

- mutex_lock(&amp;cache_lock);
- down(&amp;cache_lock);
+ spin_lock_irqsave(&amp;cache_lock, flags);
__cache_add(obj);
- mutex_unlock(&amp;cache_lock);
- up(&amp;cache_lock);
+ spin_unlock_irqrestore(&amp;cache_lock, flags);
return 0;
}

void cache_delete(int id)
{
- mutex_lock(&amp;cache_lock);
- down(&amp;cache_lock);
+ unsigned long flags;
+
+ spin_lock_irqsave(&amp;cache_lock, flags);
__cache_delete(__cache_find(id));
- mutex_unlock(&amp;cache_lock);
- up(&amp;cache_lock);
+ spin_unlock_irqrestore(&amp;cache_lock, flags);
}

Expand All @@ -895,14 +895,14 @@ The change is shown below, in standard patch format: the
int ret = -ENOENT;
+ unsigned long flags;

- mutex_lock(&amp;cache_lock);
- down(&amp;cache_lock);
+ spin_lock_irqsave(&amp;cache_lock, flags);
obj = __cache_find(id);
if (obj) {
ret = 0;
strcpy(name, obj-&gt;name);
}
- mutex_unlock(&amp;cache_lock);
- up(&amp;cache_lock);
+ spin_unlock_irqrestore(&amp;cache_lock, flags);
return ret;
}
Expand Down
6 changes: 3 additions & 3 deletions trunk/Documentation/DocBook/rapidio.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -133,9 +133,9 @@
!Idrivers/rapidio/rio-sysfs.c
</sect1>
<sect1><title>PPC32 support</title>
!Iarch/powerpc/kernel/rio.c
!Earch/powerpc/sysdev/fsl_rio.c
!Iarch/powerpc/sysdev/fsl_rio.c
!Iarch/ppc/kernel/rio.c
!Earch/ppc/syslib/ppc85xx_rio.c
!Iarch/ppc/syslib/ppc85xx_rio.c
</sect1>
</chapter>

Expand Down
Loading

0 comments on commit 7b242bd

Please sign in to comment.