<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux, branch v2.6.39.1</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/?h=v2.6.39.1</id>
<link rel='self' href='https://git.amat.us/linux/atom/?h=v2.6.39.1'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2011-06-03T00:34:20Z</updated>
<entry>
<title>Linux 2.6.39.1</title>
<updated>2011-06-03T00:34:20Z</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2011-06-03T00:34:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=cf29f916c310c9b13c19514b496700c549597e11'/>
<id>urn:sha1:cf29f916c310c9b13c19514b496700c549597e11</id>
<content type='text'>
</content>
</entry>
<entry>
<title>AppArmor: fix oops in apparmor_setprocattr</title>
<updated>2011-06-03T00:32:51Z</updated>
<author>
<name>Kees Cook</name>
<email>kees.cook@canonical.com</email>
</author>
<published>2011-05-31T18:31:41Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b8ccd154b8435ba1f60c6a41d38a53c30d295218'/>
<id>urn:sha1:b8ccd154b8435ba1f60c6a41d38a53c30d295218</id>
<content type='text'>
commit a5b2c5b2ad5853591a6cac6134cd0f599a720865 upstream.

When invalid parameters are passed to apparmor_setprocattr a NULL deref
oops occurs when it tries to record an audit message. This is because
it is passing NULL for the profile parameter for aa_audit. But aa_audit
now requires that the profile passed is not NULL.

Fix this by passing the current profile on the task that is trying to
setprocattr.

Signed-off-by: Kees Cook &lt;kees@ubuntu.com&gt;
Signed-off-by: John Johansen &lt;john.johansen@canonical.com&gt;
Signed-off-by: James Morris &lt;jmorris@namei.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>ext4: Use schedule_timeout_interruptible() for waiting in lazyinit thread</title>
<updated>2011-06-03T00:32:51Z</updated>
<author>
<name>Lukas Czerner</name>
<email>lczerner@redhat.com</email>
</author>
<published>2011-05-20T17:49:04Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a50ee58396be6f8398b2de911dac148bfb424c35'/>
<id>urn:sha1:a50ee58396be6f8398b2de911dac148bfb424c35</id>
<content type='text'>
commit 4ed5c033c11b33149d993734a6a8de1016e8f03f upstream.

In order to make lazyinit eat approx. 10% of io bandwidth at max, we
are sleeping between zeroing each single inode table. For that purpose
we are using timer which wakes up thread when it expires. It is set
via add_timer() and this may cause troubles in the case that thread
has been woken up earlier and in next iteration we call add_timer() on
still running timer hence hitting BUG_ON in add_timer(). We could fix
that by using mod_timer() instead however we can use
schedule_timeout_interruptible() for waiting and hence simplifying
things a lot.

This commit exchange the old "waiting mechanism" with simple
schedule_timeout_interruptible(), setting the time to sleep. Hence we
do not longer need li_wait_daemon waiting queue and others, so get rid
of it.

Addresses-Red-Hat-Bugzilla: #699708

Signed-off-by: Lukas Czerner &lt;lczerner@redhat.com&gt;
Signed-off-by: "Theodore Ts'o" &lt;tytso@mit.edu&gt;
Reviewed-by: Eric Sandeen &lt;sandeen@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>ext4: fix possible use-after-free in ext4_remove_li_request()</title>
<updated>2011-06-03T00:32:50Z</updated>
<author>
<name>Lukas Czerner</name>
<email>lczerner@redhat.com</email>
</author>
<published>2011-05-20T17:55:29Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0e73b1f4f61142e32ec5acbda8e50bfc79dbec87'/>
<id>urn:sha1:0e73b1f4f61142e32ec5acbda8e50bfc79dbec87</id>
<content type='text'>
commit 1bb933fb1fa8e4cb337a0d5dfd2ff4c0dc2073e8 upstream.

We need to take reference to the s_li_request after we take a mutex,
because it might be freed since then, hence result in accessing old
already freed memory. Also we should protect the whole
ext4_remove_li_request() because ext4_li_info might be in the process of
being freed in ext4_lazyinit_thread().

Signed-off-by: Lukas Czerner &lt;lczerner@redhat.com&gt;
Signed-off-by: "Theodore Ts'o" &lt;tytso@mit.edu&gt;
Reviewed-by: Eric Sandeen &lt;sandeen@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>block: don't block events on excl write for non-optical devices</title>
<updated>2011-06-03T00:32:50Z</updated>
<author>
<name>Tejun Heo</name>
<email>tj@kernel.org</email>
</author>
<published>2011-04-21T18:54:46Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9a18274e9444e3581a6ba7479ddad080d1be63c0'/>
<id>urn:sha1:9a18274e9444e3581a6ba7479ddad080d1be63c0</id>
<content type='text'>
commit d4dc210f69bcb0b4bef5a83b1c323817be89bad1 upstream.

Disk event code automatically blocks events on excl write.  This is
primarily to avoid issuing polling commands while burning is in
progress.  This behavior doesn't fit other types of devices with
removeable media where polling commands don't have adverse side
effects and door locking usually doesn't exist.

This patch introduces new genhd flag which controls the auto-blocking
behavior and uses it to enable auto-blocking only on optical devices.

Note for stable: 2.6.38 and later only

Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt;
Reported-by: Kay Sievers &lt;kay.sievers@vrfy.org&gt;
Signed-off-by: Jens Axboe &lt;jaxboe@fusionio.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>xen mmu: fix a race window causing leave_mm BUG()</title>
<updated>2011-06-03T00:32:50Z</updated>
<author>
<name>Tian, Kevin</name>
<email>kevin.tian@intel.com</email>
</author>
<published>2011-05-12T02:56:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=86bc85941ec3dff36ba442f181e5d7e28ac7e2f7'/>
<id>urn:sha1:86bc85941ec3dff36ba442f181e5d7e28ac7e2f7</id>
<content type='text'>
commit 7899891c7d161752f29abcc9bc0a9c6c3a3af26c upstream.

There's a race window in xen_drop_mm_ref, where remote cpu may exit
dirty bitmap between the check on this cpu and the point where remote
cpu handles drop request. So in drop_other_mm_ref we need check
whether TLB state is still lazy before calling into leave_mm. This
bug is rarely observed in earlier kernel, but exaggerated by the
commit 831d52bc153971b70e64eccfbed2b232394f22f8
("x86, mm: avoid possible bogus tlb entries by clearing prev mm_cpumask after switching mm")
which clears bitmap after changing the TLB state. the call trace is as below:

---------------------------------
kernel BUG at arch/x86/mm/tlb.c:61!
invalid opcode: 0000 [#1] SMP
last sysfs file: /sys/devices/system/xen_memory/xen_memory0/info/current_kb
CPU 1
Modules linked in: 8021q garp xen_netback xen_blkback blktap blkback_pagemap nbd bridge stp llc autofs4 ipmi_devintf ipmi_si ipmi_msghandler lockd sunrpc bonding ipv6 xenfs dm_multipath video output sbs sbshc parport_pc lp parport ses enclosure snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device serio_raw bnx2 snd_pcm_oss snd_mixer_oss snd_pcm snd_timer iTCO_wdt snd soundcore snd_page_alloc i2c_i801 iTCO_vendor_support i2c_core pcs pkr pata_acpi ata_generic ata_piix shpchp mptsas mptscsih mptbase [last unloaded: freq_table]
Pid: 25581, comm: khelper Not tainted 2.6.32.36fixxen #1 Tecal RH2285
RIP: e030:[&lt;ffffffff8103a3cb&gt;]  [&lt;ffffffff8103a3cb&gt;] leave_mm+0x15/0x46
RSP: e02b:ffff88002805be48  EFLAGS: 00010046
RAX: 0000000000000000 RBX: 0000000000000001 RCX: ffff88015f8e2da0
RDX: ffff88002805be78 RSI: 0000000000000000 RDI: 0000000000000001
RBP: ffff88002805be48 R08: ffff88009d662000 R09: dead000000200200
R10: dead000000100100 R11: ffffffff814472b2 R12: ffff88009bfc1880
R13: ffff880028063020 R14: 00000000000004f6 R15: 0000000000000000
FS:  00007f62362d66e0(0000) GS:ffff880028058000(0000) knlGS:0000000000000000
CS:  e033 DS: 0000 ES: 0000 CR0: 000000008005003b
CR2: 0000003aabc11909 CR3: 000000009b8ca000 CR4: 0000000000002660
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 00000000000000 00
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Process khelper (pid: 25581, threadinfo ffff88007691e000, task ffff88009b92db40)
Stack:
 ffff88002805be68 ffffffff8100e4ae 0000000000000001 ffff88009d733b88
&lt;0&gt; ffff88002805be98 ffffffff81087224 ffff88002805be78 ffff88002805be78
&lt;0&gt; ffff88015f808360 00000000000004f6 ffff88002805bea8 ffffffff81010108
Call Trace:
 &lt;IRQ&gt;
 [&lt;ffffffff8100e4ae&gt;] drop_other_mm_ref+0x2a/0x53
 [&lt;ffffffff81087224&gt;] generic_smp_call_function_single_interrupt+0xd8/0xfc
 [&lt;ffffffff81010108&gt;] xen_call_function_single_interrupt+0x13/0x28
 [&lt;ffffffff810a936a&gt;] handle_IRQ_event+0x66/0x120
 [&lt;ffffffff810aac5b&gt;] handle_percpu_irq+0x41/0x6e
 [&lt;ffffffff8128c1c0&gt;] __xen_evtchn_do_upcall+0x1ab/0x27d
 [&lt;ffffffff8128dd11&gt;] xen_evtchn_do_upcall+0x33/0x46
 [&lt;ffffffff81013efe&gt;] xen_do_hyper visor_callback+0x1e/0x30
 &lt;EOI&gt;
 [&lt;ffffffff814472b2&gt;] ? _spin_unlock_irqrestore+0x15/0x17
 [&lt;ffffffff8100f8cf&gt;] ? xen_restore_fl_direct_end+0x0/0x1
 [&lt;ffffffff81113f71&gt;] ? flush_old_exec+0x3ac/0x500
 [&lt;ffffffff81150dc5&gt;] ? load_elf_binary+0x0/0x17ef
 [&lt;ffffffff81150dc5&gt;] ? load_elf_binary+0x0/0x17ef
 [&lt;ffffffff8115115d&gt;] ? load_elf_binary+0x398/0x17ef
 [&lt;ffffffff81042fcf&gt;] ? need_resched+0x23/0x2d
 [&lt;ffffffff811f4648&gt;] ? process_measurement+0xc0/0xd7
 [&lt;ffffffff81150dc5&gt;] ? load_elf_binary+0x0/0x17ef
 [&lt;ffffffff81113094&gt;] ? search_binary_handler+0xc8/0x255
 [&lt;ffffffff81114362&gt;] ? do_execve+0x1c3/0x29e
 [&lt;ffffffff8101155d&gt;] ? sys_execve+0x43/0x5d
 [&lt;ffffffff8106fc45&gt;] ? __call_usermodehelper+0x0/0x6f
 [&lt;ffffffff81013e28&gt;] ? kernel_execve+0x68/0xd0
 [&lt;ffffffff 8106fc45&gt;] ? __call_usermodehelper+0x0/0x6f
 [&lt;ffffffff8100f8cf&gt;] ? xen_restore_fl_direct_end+0x0/0x1
 [&lt;ffffffff8106fb64&gt;] ? ____call_usermodehelper+0x113/0x11e
 [&lt;ffffffff81013daa&gt;] ? child_rip+0xa/0x20
 [&lt;ffffffff8106fc45&gt;] ? __call_usermodehelper+0x0/0x6f
 [&lt;ffffffff81012f91&gt;] ? int_ret_from_sys_call+0x7/0x1b
 [&lt;ffffffff8101371d&gt;] ? retint_restore_args+0x5/0x6
 [&lt;ffffffff81013da0&gt;] ? child_rip+0x0/0x20
Code: 41 5e 41 5f c9 c3 55 48 89 e5 0f 1f 44 00 00 e8 17 ff ff ff c9 c3 55 48 89 e5 0f 1f 44 00 00 65 8b 04 25 c8 55 01 00 ff c8 75 04 &lt;0f&gt; 0b eb fe 65 48 8b 34 25 c0 55 01 00 48 81 c6 b8 02 00 00 e8
RIP  [&lt;ffffffff8103a3cb&gt;] leave_mm+0x15/0x46
 RSP &lt;ffff88002805be48&gt;
---[ end trace ce9cee6832a9c503 ]---

Tested-by: Maoxiaoyun&lt;tinnycloud@hotmail.com&gt;
Signed-off-by: Kevin Tian &lt;kevin.tian@intel.com&gt;
[v1: Fleshed out the git description a bit]
Signed-off-by: Konrad Rzeszutek Wilk &lt;konrad.wilk@oracle.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>xen/setup: Ignore E820_UNUSABLE when setting 1-1 mappings.</title>
<updated>2011-06-03T00:32:49Z</updated>
<author>
<name>Konrad Rzeszutek Wilk</name>
<email>konrad.wilk@oracle.com</email>
</author>
<published>2011-04-12T11:57:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0d97559675bcba247e705712800ccd2c6d3674f1'/>
<id>urn:sha1:0d97559675bcba247e705712800ccd2c6d3674f1</id>
<content type='text'>
commit 15bfc094517db2ddf38ca7ed47f3a1c0ad24f7c4 upstream.

When we parse the raw E820, the Xen hypervisor can set "E820_RAM"
to "E820_UNUSABLE" if the mem=X argument is used. As such we
should _not_ consider the E820_UNUSABLE as an 1-1 identity
mapping, but instead use the same case as for E820_RAM.

Signed-off-by: Konrad Rzeszutek Wilk &lt;konrad.wilk@oracle.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>xen/setup: Fix for incorrect xen_extra_mem_start initialization under 32-bit</title>
<updated>2011-06-03T00:32:45Z</updated>
<author>
<name>Daniel Kiper</name>
<email>dkiper@net-space.pl</email>
</author>
<published>2011-05-11T20:34:38Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0fa5814524bb6c60fdc28915f367d8a5aa2b72c4'/>
<id>urn:sha1:0fa5814524bb6c60fdc28915f367d8a5aa2b72c4</id>
<content type='text'>
commit 0f16d0dfcdb5aab97d9e368f008b070b5b3ec6d3 upstream.

git commit 24bdb0b62cc82120924762ae6bc85afc8c3f2b26 (xen: do not create
the extra e820 region at an addr lower than 4G) does not take into
account that ifdef CONFIG_X86_32 instead of e820_end_of_low_ram_pfn()
find_low_pfn_range() is called (both calls are from arch/x86/kernel/setup.c).
find_low_pfn_range() behaves correctly and does not require change in
xen_extra_mem_start initialization. Additionally, if xen_extra_mem_start
is initialized in the same way as ifdef CONFIG_X86_64 then memory hotplug
support for Xen balloon driver (under development) is broken.

Signed-off-by: Daniel Kiper &lt;dkiper@net-space.pl&gt;
Signed-off-by: Konrad Rzeszutek Wilk &lt;konrad.wilk@oracle.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>xen/p2m: Create entries in the P2M_MFN trees's to track 1-1 mappings</title>
<updated>2011-06-03T00:32:43Z</updated>
<author>
<name>Konrad Rzeszutek Wilk</name>
<email>konrad.wilk@oracle.com</email>
</author>
<published>2011-04-01T19:18:48Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=da115763a03d730d374b5105fb5ded0c90b3329e'/>
<id>urn:sha1:da115763a03d730d374b5105fb5ded0c90b3329e</id>
<content type='text'>
commit 8c5950881c3b5e6e350e4b0438a8ccc513d90df9 upstream.

.. when applicable. We need to track in the p2m_mfn and
p2m_mfn_p the MFNs and pointers, respectivly, for the P2M entries
that are allocated for the identity mappings. Without this,
a PV domain with an E820 that triggers the 1-1 mapping to kick in,
won't be able to be restored as the P2M won't have the identity
mappings.

Signed-off-by: Konrad Rzeszutek Wilk &lt;konrad.wilk@oracle.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>PCI: Add quirk for setting valid class for TI816X Endpoint</title>
<updated>2011-06-03T00:32:43Z</updated>
<author>
<name>Hemant Pedanekar</name>
<email>hemantp@ti.com</email>
</author>
<published>2011-04-05T07:02:50Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e8dbdcfd31544a412f49046a2be5e70fe28f5fc9'/>
<id>urn:sha1:e8dbdcfd31544a412f49046a2be5e70fe28f5fc9</id>
<content type='text'>
commit 63c4408074cbcc070ac17fc10e524800eb9bd0b0 upstream.

TI816X (common name for DM816x/C6A816x/AM389x family) devices configured
to boot as PCIe Endpoint have class code = 0. This makes kernel PCI bus
code to skip allocating BARs to these devices resulting into following
type of error when trying to enable them:

"Device 0000:01:00.0 not available because of resource collisions"

The device cannot be operated because of the above issue.

This patch adds a ID specific (TI VENDOR ID and 816X DEVICE ID based)
'early' fixup quirk to replace class code with
PCI_CLASS_MULTIMEDIA_VIDEO as class.

Signed-off-by: Hemant Pedanekar &lt;hemantp@ti.com&gt;
Signed-off-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
</feed>
