Merge branch 'fixes.b8' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/bird
This commit is contained in:
commit
cf70a6f264
@ -129,6 +129,9 @@ void machine_power_off(void)
|
|||||||
for (;;);
|
for (;;);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void (*pm_power_off)(void) = machine_power_off;
|
||||||
|
EXPORT_SYMBOL(pm_power_off);
|
||||||
|
|
||||||
void show_regs(struct pt_regs * regs)
|
void show_regs(struct pt_regs * regs)
|
||||||
{
|
{
|
||||||
printk("\n");
|
printk("\n");
|
||||||
|
@ -2082,9 +2082,7 @@ static void sbp2_check_sbp2_response(struct scsi_id_instance_data *scsi_id,
|
|||||||
|
|
||||||
SBP2_DEBUG("sbp2_check_sbp2_response");
|
SBP2_DEBUG("sbp2_check_sbp2_response");
|
||||||
|
|
||||||
switch (SCpnt->cmnd[0]) {
|
if (SCpnt->cmnd[0] == INQUIRY && (SCpnt->cmnd[1] & 3) == 0) {
|
||||||
|
|
||||||
case INQUIRY:
|
|
||||||
/*
|
/*
|
||||||
* Make sure data length is ok. Minimum length is 36 bytes
|
* Make sure data length is ok. Minimum length is 36 bytes
|
||||||
*/
|
*/
|
||||||
@ -2097,13 +2095,7 @@ static void sbp2_check_sbp2_response(struct scsi_id_instance_data *scsi_id,
|
|||||||
*/
|
*/
|
||||||
scsi_buf[2] |= 2;
|
scsi_buf[2] |= 2;
|
||||||
scsi_buf[3] = (scsi_buf[3] & 0xf0) | 2;
|
scsi_buf[3] = (scsi_buf[3] & 0xf0) | 2;
|
||||||
|
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -204,10 +204,6 @@ int proc_fill_super(struct super_block *s, void *data, int silent)
|
|||||||
root_inode = proc_get_inode(s, PROC_ROOT_INO, &proc_root);
|
root_inode = proc_get_inode(s, PROC_ROOT_INO, &proc_root);
|
||||||
if (!root_inode)
|
if (!root_inode)
|
||||||
goto out_no_root;
|
goto out_no_root;
|
||||||
/*
|
|
||||||
* Fixup the root inode's nlink value
|
|
||||||
*/
|
|
||||||
root_inode->i_nlink += nr_processes();
|
|
||||||
root_inode->i_uid = 0;
|
root_inode->i_uid = 0;
|
||||||
root_inode->i_gid = 0;
|
root_inode->i_gid = 0;
|
||||||
s->s_root = d_alloc_root(root_inode);
|
s->s_root = d_alloc_root(root_inode);
|
||||||
|
@ -80,16 +80,16 @@ void __init proc_root_init(void)
|
|||||||
proc_bus = proc_mkdir("bus", NULL);
|
proc_bus = proc_mkdir("bus", NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int proc_root_getattr(struct vfsmount *mnt, struct dentry *dentry, struct kstat *stat
|
||||||
|
)
|
||||||
|
{
|
||||||
|
generic_fillattr(dentry->d_inode, stat);
|
||||||
|
stat->nlink = proc_root.nlink + nr_processes();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static struct dentry *proc_root_lookup(struct inode * dir, struct dentry * dentry, struct nameidata *nd)
|
static struct dentry *proc_root_lookup(struct inode * dir, struct dentry * dentry, struct nameidata *nd)
|
||||||
{
|
{
|
||||||
/*
|
|
||||||
* nr_threads is actually protected by the tasklist_lock;
|
|
||||||
* however, it's conventional to do reads, especially for
|
|
||||||
* reporting, without any locking whatsoever.
|
|
||||||
*/
|
|
||||||
if (dir->i_ino == PROC_ROOT_INO) /* check for safety... */
|
|
||||||
dir->i_nlink = proc_root.nlink + nr_threads;
|
|
||||||
|
|
||||||
if (!proc_lookup(dir, dentry, nd)) {
|
if (!proc_lookup(dir, dentry, nd)) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
@ -134,6 +134,7 @@ static struct file_operations proc_root_operations = {
|
|||||||
*/
|
*/
|
||||||
static struct inode_operations proc_root_inode_operations = {
|
static struct inode_operations proc_root_inode_operations = {
|
||||||
.lookup = proc_root_lookup,
|
.lookup = proc_root_lookup,
|
||||||
|
.getattr = proc_root_getattr,
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -79,7 +79,7 @@ static __inline__ int irq_canonicalize(int irq)
|
|||||||
|
|
||||||
extern void (*enable_irq)(unsigned int);
|
extern void (*enable_irq)(unsigned int);
|
||||||
extern void (*disable_irq)(unsigned int);
|
extern void (*disable_irq)(unsigned int);
|
||||||
#define enable_irq_nosync enable_irq
|
#define disable_irq_nosync disable_irq
|
||||||
|
|
||||||
struct pt_regs;
|
struct pt_regs;
|
||||||
|
|
||||||
|
@ -336,6 +336,7 @@ static inline void raw_outsw_swapw(volatile u16 __iomem *port, const u16 *buf,
|
|||||||
: "d0", "a0", "a1", "d6");
|
: "d0", "a0", "a1", "d6");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#define __raw_writel raw_outl
|
||||||
|
|
||||||
#endif /* __KERNEL__ */
|
#endif /* __KERNEL__ */
|
||||||
|
|
||||||
|
@ -841,7 +841,7 @@ static void audit_log_exit(struct audit_context *context, gfp_t gfp_mask)
|
|||||||
|
|
||||||
for (aux = context->aux; aux; aux = aux->next) {
|
for (aux = context->aux; aux; aux = aux->next) {
|
||||||
|
|
||||||
ab = audit_log_start(context, GFP_KERNEL, aux->type);
|
ab = audit_log_start(context, gfp_mask, aux->type);
|
||||||
if (!ab)
|
if (!ab)
|
||||||
continue; /* audit_panic has been called */
|
continue; /* audit_panic has been called */
|
||||||
|
|
||||||
@ -878,14 +878,14 @@ static void audit_log_exit(struct audit_context *context, gfp_t gfp_mask)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (context->pwd && context->pwdmnt) {
|
if (context->pwd && context->pwdmnt) {
|
||||||
ab = audit_log_start(context, GFP_KERNEL, AUDIT_CWD);
|
ab = audit_log_start(context, gfp_mask, AUDIT_CWD);
|
||||||
if (ab) {
|
if (ab) {
|
||||||
audit_log_d_path(ab, "cwd=", context->pwd, context->pwdmnt);
|
audit_log_d_path(ab, "cwd=", context->pwd, context->pwdmnt);
|
||||||
audit_log_end(ab);
|
audit_log_end(ab);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (i = 0; i < context->name_count; i++) {
|
for (i = 0; i < context->name_count; i++) {
|
||||||
ab = audit_log_start(context, GFP_KERNEL, AUDIT_PATH);
|
ab = audit_log_start(context, gfp_mask, AUDIT_PATH);
|
||||||
if (!ab)
|
if (!ab)
|
||||||
continue; /* audit_panic has been called */
|
continue; /* audit_panic has been called */
|
||||||
|
|
||||||
|
@ -15,8 +15,8 @@
|
|||||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <linux/io.h>
|
|
||||||
#include <linux/module.h>
|
#include <linux/module.h>
|
||||||
|
#include <linux/io.h>
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* __iowrite32_copy - copy data to MMIO space, in 32-bit units
|
* __iowrite32_copy - copy data to MMIO space, in 32-bit units
|
||||||
|
@ -458,7 +458,7 @@ ip6ip6_err(struct sk_buff *skb, struct inet6_skb_parm *opt,
|
|||||||
mtu = IPV6_MIN_MTU;
|
mtu = IPV6_MIN_MTU;
|
||||||
t->dev->mtu = mtu;
|
t->dev->mtu = mtu;
|
||||||
|
|
||||||
if ((len = sizeof (*ipv6h) + ipv6h->payload_len) > mtu) {
|
if ((len = sizeof (*ipv6h) + ntohs(ipv6h->payload_len)) > mtu) {
|
||||||
rel_type = ICMPV6_PKT_TOOBIG;
|
rel_type = ICMPV6_PKT_TOOBIG;
|
||||||
rel_code = 0;
|
rel_code = 0;
|
||||||
rel_info = mtu;
|
rel_info = mtu;
|
||||||
|
Loading…
Reference in New Issue
Block a user