Merge branch 'fixes.b8' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/bird

This commit is contained in:
Linus Torvalds 2006-02-20 20:09:44 -08:00
commit cf70a6f264
9 changed files with 20 additions and 27 deletions

View File

@ -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");

View File

@ -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;
} }
/* /*

View File

@ -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);

View File

@ -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,
}; };
/* /*

View File

@ -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;

View File

@ -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__ */

View File

@ -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 */

View File

@ -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

View File

@ -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;