Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 98470
b: refs/heads/master
c: fde6074
h: refs/heads/master
v: v3
  • Loading branch information
Mauro Carvalho Chehab committed Jun 26, 2008
1 parent 84f797d commit bea35f1
Show file tree
Hide file tree
Showing 28 changed files with 150 additions and 172 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 0acbbee440fadf45164cc9537ee7d528d045f2d6
refs/heads/master: fde60748d2f0345cabff20d25458c67d4ac06034
12 changes: 3 additions & 9 deletions trunk/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,6 @@
# subdirectories here. Add them in the ".gitignore" file
# in that subdirectory instead.
#
# NOTE! Please use 'git-ls-files -i --exclude-standard'
# command after changing this file, to see if there are
# any tracked files which get ignored after the change.
#
# Normal rules
#
.*
Expand All @@ -22,21 +18,19 @@
*.lst
*.symtypes
*.order
*.elf
*.bin
*.gz

#
# Top-level generic files
#
tags
TAGS
vmlinux
vmlinux*
!vmlinux.lds.S
!vmlinux.lds.h
System.map
Module.markers
Module.symvers
!.gitignore
!.mailmap

#
# Generated include files
Expand Down
9 changes: 0 additions & 9 deletions trunk/Documentation/feature-removal-schedule.txt
Original file line number Diff line number Diff line change
Expand Up @@ -312,12 +312,3 @@ When: 2.6.26
Why: Implementation became generic; users should now include
linux/semaphore.h instead.
Who: Matthew Wilcox <willy@linux.intel.com>

---------------------------

What: CONFIG_THERMAL_HWMON
When: January 2009
Why: This option was introduced just to allow older lm-sensors userspace
to keep working over the upgrade to 2.6.26. At the scheduled time of
removal fixed lm-sensors (2.x or 3.x) should be readily available.
Who: Rene Herman <rene.herman@gmail.com>
6 changes: 2 additions & 4 deletions trunk/arch/blackfin/kernel/cplb-nompu/cplbinit.c
Original file line number Diff line number Diff line change
Expand Up @@ -254,8 +254,7 @@ close_cplbtab(struct cplb_tab *table)
}

/* helper function */
static void __init
__fill_code_cplbtab(struct cplb_tab *t, int i, u32 a_start, u32 a_end)
static void __fill_code_cplbtab(struct cplb_tab *t, int i, u32 a_start, u32 a_end)
{
if (cplb_data[i].psize) {
fill_cplbtab(t,
Expand Down Expand Up @@ -292,8 +291,7 @@ __fill_code_cplbtab(struct cplb_tab *t, int i, u32 a_start, u32 a_end)
}
}

static void __init
__fill_data_cplbtab(struct cplb_tab *t, int i, u32 a_start, u32 a_end)
static void __fill_data_cplbtab(struct cplb_tab *t, int i, u32 a_start, u32 a_end)
{
if (cplb_data[i].psize) {
fill_cplbtab(t,
Expand Down
5 changes: 0 additions & 5 deletions trunk/arch/blackfin/kernel/irqchip.c
Original file line number Diff line number Diff line change
Expand Up @@ -60,14 +60,9 @@ static struct irq_chip bad_chip = {
};

static struct irq_desc bad_irq_desc = {
.status = IRQ_DISABLED,
.chip = &bad_chip,
.handle_irq = handle_bad_irq,
.depth = 1,
.lock = __SPIN_LOCK_UNLOCKED(irq_desc->lock),
#ifdef CONFIG_SMP
.affinity = CPU_MASK_ALL
#endif
};

int show_interrupts(struct seq_file *p, void *v)
Expand Down
3 changes: 0 additions & 3 deletions trunk/drivers/acpi/bay.c
Original file line number Diff line number Diff line change
Expand Up @@ -377,9 +377,6 @@ static int __init bay_init(void)

INIT_LIST_HEAD(&drive_bays);

if (acpi_disabled)
return -ENODEV;

/* look for dockable drive bays */
acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT,
ACPI_UINT32_MAX, find_bay, &bays, NULL);
Expand Down
3 changes: 0 additions & 3 deletions trunk/drivers/acpi/dock.c
Original file line number Diff line number Diff line change
Expand Up @@ -917,9 +917,6 @@ static int __init dock_init(void)

dock_station = NULL;

if (acpi_disabled)
return 0;

/* look for a dock station */
acpi_walk_namespace(ACPI_TYPE_DEVICE, ACPI_ROOT_OBJECT,
ACPI_UINT32_MAX, find_dock, &num, NULL);
Expand Down
3 changes: 0 additions & 3 deletions trunk/drivers/acpi/glue.c
Original file line number Diff line number Diff line change
Expand Up @@ -333,9 +333,6 @@ static int __init acpi_rtc_init(void)
{
struct device *dev = get_rtc_dev();

if (acpi_disabled)
return 0;

if (dev) {
rtc_wake_setup();
rtc_info.wake_on = rtc_wake_on;
Expand Down
3 changes: 1 addition & 2 deletions trunk/drivers/firewire/fw-sbp2.c
Original file line number Diff line number Diff line change
Expand Up @@ -1051,8 +1051,7 @@ static int sbp2_scan_unit_dir(struct sbp2_target *tgt, u32 *directory,
break;

case SBP2_CSR_LOGICAL_UNIT_DIRECTORY:
/* Adjust for the increment in the iterator */
if (sbp2_scan_logical_unit_dir(tgt, ci.p - 1 + value) < 0)
if (sbp2_scan_logical_unit_dir(tgt, ci.p + value) < 0)
return -ENOMEM;
break;
}
Expand Down
1 change: 1 addition & 0 deletions trunk/drivers/media/dvb/ttpci/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,7 @@ config DVB_BUDGET
config DVB_BUDGET_CI
tristate "Budget cards with onboard CI connector"
depends on DVB_BUDGET_CORE && I2C
depends on INPUT # due to IR
select DVB_STV0297 if !DVB_FE_CUSTOMISE
select DVB_STV0299 if !DVB_FE_CUSTOMISE
select DVB_TDA1004X if !DVB_FE_CUSTOMISE
Expand Down
9 changes: 0 additions & 9 deletions trunk/drivers/thermal/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,3 @@ menuconfig THERMAL
cooling devices.
All platforms with ACPI thermal support can use this driver.
If you want this support, you should say Y or M here.

config THERMAL_HWMON
bool "Hardware monitoring support"
depends on HWMON=y || HWMON=THERMAL
help
The generic thermal sysfs driver's hardware monitoring support
requires a 2.10.7/3.0.2 or later lm-sensors userspace.

Say Y if your user-space is new enough.
4 changes: 2 additions & 2 deletions trunk/drivers/thermal/thermal_sys.c
Original file line number Diff line number Diff line change
Expand Up @@ -295,8 +295,8 @@ thermal_cooling_device_trip_point_show(struct device *dev,

/* Device management */

#if defined(CONFIG_THERMAL_HWMON)

#if defined(CONFIG_HWMON) || \
(defined(CONFIG_HWMON_MODULE) && defined(CONFIG_THERMAL_MODULE))
/* hwmon sys I/F */
#include <linux/hwmon.h>
static LIST_HEAD(thermal_hwmon_list);
Expand Down
10 changes: 1 addition & 9 deletions trunk/fs/block_dev.c
Original file line number Diff line number Diff line change
Expand Up @@ -931,16 +931,8 @@ static int do_open(struct block_device *bdev, struct file *file, int for_part)
struct gendisk *disk;
int ret;
int part;
int perm = 0;

if (file->f_mode & FMODE_READ)
perm |= MAY_READ;
if (file->f_mode & FMODE_WRITE)
perm |= MAY_WRITE;
/*
* hooks: /n/, see "layering violations".
*/
ret = devcgroup_inode_permission(bdev->bd_inode, perm);
ret = devcgroup_inode_permission(bdev->bd_inode, file->f_mode);
if (ret != 0)
return ret;

Expand Down
68 changes: 34 additions & 34 deletions trunk/fs/dcache.c
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@
#include <linux/syscalls.h>
#include <linux/string.h>
#include <linux/mm.h>
#include <linux/fdtable.h>
#include <linux/fs.h>
#include <linux/fsnotify.h>
#include <linux/slab.h>
Expand Down Expand Up @@ -107,10 +106,9 @@ static void dentry_lru_remove(struct dentry *dentry)
/*
* Release the dentry's inode, using the filesystem
* d_iput() operation if defined.
* Called with dcache_lock and per dentry lock held, drops both.
*/
static void dentry_iput(struct dentry * dentry)
__releases(dentry->d_lock)
__releases(dcache_lock)
{
struct inode *inode = dentry->d_inode;
if (inode) {
Expand All @@ -134,13 +132,12 @@ static void dentry_iput(struct dentry * dentry)
* d_kill - kill dentry and return parent
* @dentry: dentry to kill
*
* The dentry must already be unhashed and removed from the LRU.
* Called with dcache_lock and d_lock, releases both. The dentry must
* already be unhashed and removed from the LRU.
*
* If this is the root of the dentry tree, return NULL.
*/
static struct dentry *d_kill(struct dentry *dentry)
__releases(dentry->d_lock)
__releases(dcache_lock)
{
struct dentry *parent;

Expand Down Expand Up @@ -386,11 +383,11 @@ void d_prune_aliases(struct inode *inode)
* Try to prune ancestors as well. This is necessary to prevent
* quadratic behavior of shrink_dcache_parent(), but is also expected
* to be beneficial in reducing dentry cache fragmentation.
*
* Called with dcache_lock, drops it and then regains.
* Called with dentry->d_lock held, drops it.
*/
static void prune_one_dentry(struct dentry * dentry)
__releases(dentry->d_lock)
__releases(dcache_lock)
__acquires(dcache_lock)
{
__d_drop(dentry);
dentry = d_kill(dentry);
Expand Down Expand Up @@ -1607,9 +1604,10 @@ static int d_isparent(struct dentry *p1, struct dentry *p2)
*
* Note: If ever the locking in lock_rename() changes, then please
* remember to update this too...
*
* On return, dcache_lock will have been unlocked.
*/
static struct dentry *__d_unalias(struct dentry *dentry, struct dentry *alias)
__releases(dcache_lock)
{
struct mutex *m1 = NULL, *m2 = NULL;
struct dentry *ret;
Expand Down Expand Up @@ -1745,9 +1743,11 @@ struct dentry *d_materialise_unique(struct dentry *dentry, struct inode *inode)
shouldnt_be_hashed:
spin_unlock(&dcache_lock);
BUG();
goto shouldnt_be_hashed;
}

static int prepend(char **buffer, int *buflen, const char *str, int namelen)
static int prepend(char **buffer, int *buflen, const char *str,
int namelen)
{
*buflen -= namelen;
if (*buflen < 0)
Expand All @@ -1757,13 +1757,8 @@ static int prepend(char **buffer, int *buflen, const char *str, int namelen)
return 0;
}

static int prepend_name(char **buffer, int *buflen, struct qstr *name)
{
return prepend(buffer, buflen, name->name, name->len);
}

/**
* __d_path - return the path of a dentry
* d_path - return the path of a dentry
* @path: the dentry/vfsmount to report
* @root: root vfsmnt/dentry (may be modified by this function)
* @buffer: buffer to return value in
Expand All @@ -1784,10 +1779,9 @@ char *__d_path(const struct path *path, struct path *root,
{
struct dentry *dentry = path->dentry;
struct vfsmount *vfsmnt = path->mnt;
char *end = buffer + buflen;
char *retval;
char * end = buffer+buflen;
char * retval;

spin_lock(&vfsmount_lock);
prepend(&end, &buflen, "\0", 1);
if (!IS_ROOT(dentry) && d_unhashed(dentry) &&
(prepend(&end, &buflen, " (deleted)", 10) != 0))
Expand All @@ -1806,37 +1800,38 @@ char *__d_path(const struct path *path, struct path *root,
break;
if (dentry == vfsmnt->mnt_root || IS_ROOT(dentry)) {
/* Global root? */
spin_lock(&vfsmount_lock);
if (vfsmnt->mnt_parent == vfsmnt) {
spin_unlock(&vfsmount_lock);
goto global_root;
}
dentry = vfsmnt->mnt_mountpoint;
vfsmnt = vfsmnt->mnt_parent;
spin_unlock(&vfsmount_lock);
continue;
}
parent = dentry->d_parent;
prefetch(parent);
if ((prepend_name(&end, &buflen, &dentry->d_name) != 0) ||
if ((prepend(&end, &buflen, dentry->d_name.name,
dentry->d_name.len) != 0) ||
(prepend(&end, &buflen, "/", 1) != 0))
goto Elong;
retval = end;
dentry = parent;
}

out:
spin_unlock(&vfsmount_lock);
return retval;

global_root:
retval += 1; /* hit the slash */
if (prepend_name(&retval, &buflen, &dentry->d_name) != 0)
if (prepend(&retval, &buflen, dentry->d_name.name,
dentry->d_name.len) != 0)
goto Elong;
root->mnt = vfsmnt;
root->dentry = dentry;
goto out;

return retval;
Elong:
retval = ERR_PTR(-ENAMETOOLONG);
goto out;
return ERR_PTR(-ENAMETOOLONG);
}

/**
Expand All @@ -1850,9 +1845,9 @@ char *__d_path(const struct path *path, struct path *root,
*
* Returns the buffer or an error code if the path was too long.
*
* "buflen" should be positive.
* "buflen" should be positive. Caller holds the dcache_lock.
*/
char *d_path(const struct path *path, char *buf, int buflen)
char *d_path(struct path *path, char *buf, int buflen)
{
char *res;
struct path root;
Expand Down Expand Up @@ -1920,11 +1915,16 @@ char *dentry_path(struct dentry *dentry, char *buf, int buflen)
retval = end-1;
*retval = '/';

while (!IS_ROOT(dentry)) {
struct dentry *parent = dentry->d_parent;
for (;;) {
struct dentry *parent;
if (IS_ROOT(dentry))
break;

parent = dentry->d_parent;
prefetch(parent);
if ((prepend_name(&end, &buflen, &dentry->d_name) != 0) ||

if ((prepend(&end, &buflen, dentry->d_name.name,
dentry->d_name.len) != 0) ||
(prepend(&end, &buflen, "/", 1) != 0))
goto Elong;

Expand Down Expand Up @@ -1975,7 +1975,7 @@ asmlinkage long sys_getcwd(char __user *buf, unsigned long size)
error = -ENOENT;
/* Has the current directory has been unlinked? */
spin_lock(&dcache_lock);
if (IS_ROOT(pwd.dentry) || !d_unhashed(pwd.dentry)) {
if (pwd.dentry->d_parent == pwd.dentry || !d_unhashed(pwd.dentry)) {
unsigned long len;
struct path tmp = root;
char * cwd;
Expand Down
6 changes: 6 additions & 0 deletions trunk/fs/locks.c
Original file line number Diff line number Diff line change
Expand Up @@ -561,6 +561,9 @@ static void locks_insert_lock(struct file_lock **pos, struct file_lock *fl)
/* insert into file's list */
fl->fl_next = *pos;
*pos = fl;

if (fl->fl_ops && fl->fl_ops->fl_insert)
fl->fl_ops->fl_insert(fl);
}

/*
Expand All @@ -583,6 +586,9 @@ static void locks_delete_lock(struct file_lock **thisfl_p)
fl->fl_fasync = NULL;
}

if (fl->fl_ops && fl->fl_ops->fl_remove)
fl->fl_ops->fl_remove(fl);

if (fl->fl_nspid) {
put_pid(fl->fl_nspid);
fl->fl_nspid = NULL;
Expand Down
Loading

0 comments on commit bea35f1

Please sign in to comment.