You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
Merge branch 'work.const-qstr' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull qstr constification updates from Al Viro: "Fairly self-contained bunch - surprising lot of places passes struct qstr * as an argument when const struct qstr * would suffice; it complicates analysis for no good reason. I'd prefer to feed that separately from the assorted fixes (those are in #for-linus and with somewhat trickier topology)" * 'work.const-qstr' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: qstr: constify instances in adfs qstr: constify instances in lustre qstr: constify instances in f2fs qstr: constify instances in ext2 qstr: constify instances in vfat qstr: constify instances in procfs qstr: constify instances in fuse qstr constify instances in fs/dcache.c qstr: constify instances in nfs qstr: constify instances in ocfs2 qstr: constify instances in autofs4 qstr: constify instances in hfs qstr: constify instances in hfsplus qstr: constify instances in logfs qstr: constify dentry_init_security
This commit is contained in:
@@ -781,7 +781,7 @@ static int sa_args_init(struct inode *dir, struct inode *child,
|
||||
struct ll_sa_entry *entry, struct md_enqueue_info **pmi,
|
||||
struct ldlm_enqueue_info **pei)
|
||||
{
|
||||
struct qstr *qstr = &entry->se_qstr;
|
||||
const struct qstr *qstr = &entry->se_qstr;
|
||||
struct ll_inode_info *lli = ll_i2info(dir);
|
||||
struct md_enqueue_info *minfo;
|
||||
struct ldlm_enqueue_info *einfo;
|
||||
@@ -1340,7 +1340,7 @@ enum {
|
||||
static int is_first_dirent(struct inode *dir, struct dentry *dentry)
|
||||
{
|
||||
struct ll_dir_chain chain;
|
||||
struct qstr *target = &dentry->d_name;
|
||||
const struct qstr *target = &dentry->d_name;
|
||||
struct page *page;
|
||||
__u64 pos = 0;
|
||||
int dot_de;
|
||||
|
||||
+2
-2
@@ -101,7 +101,7 @@ out:
|
||||
}
|
||||
|
||||
static int
|
||||
adfs_match(struct qstr *name, struct object_info *obj)
|
||||
adfs_match(const struct qstr *name, struct object_info *obj)
|
||||
{
|
||||
int i;
|
||||
|
||||
@@ -126,7 +126,7 @@ adfs_match(struct qstr *name, struct object_info *obj)
|
||||
}
|
||||
|
||||
static int
|
||||
adfs_dir_lookup_byname(struct inode *inode, struct qstr *name, struct object_info *obj)
|
||||
adfs_dir_lookup_byname(struct inode *inode, const struct qstr *name, struct object_info *obj)
|
||||
{
|
||||
struct super_block *sb = inode->i_sb;
|
||||
const struct adfs_dir_ops *ops = ADFS_SB(sb)->s_dir;
|
||||
|
||||
+4
-4
@@ -159,7 +159,7 @@ static struct dentry *autofs4_lookup_active(struct dentry *dentry)
|
||||
{
|
||||
struct autofs_sb_info *sbi = autofs4_sbi(dentry->d_sb);
|
||||
struct dentry *parent = dentry->d_parent;
|
||||
struct qstr *name = &dentry->d_name;
|
||||
const struct qstr *name = &dentry->d_name;
|
||||
unsigned int len = name->len;
|
||||
unsigned int hash = name->hash;
|
||||
const unsigned char *str = name->name;
|
||||
@@ -172,7 +172,7 @@ static struct dentry *autofs4_lookup_active(struct dentry *dentry)
|
||||
list_for_each(p, head) {
|
||||
struct autofs_info *ino;
|
||||
struct dentry *active;
|
||||
struct qstr *qstr;
|
||||
const struct qstr *qstr;
|
||||
|
||||
ino = list_entry(p, struct autofs_info, active);
|
||||
active = ino->dentry;
|
||||
@@ -214,7 +214,7 @@ static struct dentry *autofs4_lookup_expiring(struct dentry *dentry,
|
||||
{
|
||||
struct autofs_sb_info *sbi = autofs4_sbi(dentry->d_sb);
|
||||
struct dentry *parent = dentry->d_parent;
|
||||
struct qstr *name = &dentry->d_name;
|
||||
const struct qstr *name = &dentry->d_name;
|
||||
unsigned int len = name->len;
|
||||
unsigned int hash = name->hash;
|
||||
const unsigned char *str = name->name;
|
||||
@@ -227,7 +227,7 @@ static struct dentry *autofs4_lookup_expiring(struct dentry *dentry,
|
||||
list_for_each(p, head) {
|
||||
struct autofs_info *ino;
|
||||
struct dentry *expiring;
|
||||
struct qstr *qstr;
|
||||
const struct qstr *qstr;
|
||||
|
||||
if (rcu_walk) {
|
||||
spin_unlock(&sbi->lookup_lock);
|
||||
|
||||
+2
-2
@@ -225,7 +225,7 @@ rename_retry:
|
||||
}
|
||||
|
||||
static struct autofs_wait_queue *
|
||||
autofs4_find_wait(struct autofs_sb_info *sbi, struct qstr *qstr)
|
||||
autofs4_find_wait(struct autofs_sb_info *sbi, const struct qstr *qstr)
|
||||
{
|
||||
struct autofs_wait_queue *wq;
|
||||
|
||||
@@ -249,7 +249,7 @@ autofs4_find_wait(struct autofs_sb_info *sbi, struct qstr *qstr)
|
||||
*/
|
||||
static int validate_request(struct autofs_wait_queue **wait,
|
||||
struct autofs_sb_info *sbi,
|
||||
struct qstr *qstr,
|
||||
const struct qstr *qstr,
|
||||
struct dentry *dentry, enum autofs_notify notify)
|
||||
{
|
||||
struct autofs_wait_queue *wq;
|
||||
|
||||
+2
-2
@@ -2636,7 +2636,7 @@ EXPORT_SYMBOL(d_exact_alias);
|
||||
* Parent inode i_mutex must be held over d_lookup and into this call (to
|
||||
* keep renames and concurrent inserts, and readdir(2) away).
|
||||
*/
|
||||
void dentry_update_name_case(struct dentry *dentry, struct qstr *name)
|
||||
void dentry_update_name_case(struct dentry *dentry, const struct qstr *name)
|
||||
{
|
||||
BUG_ON(!inode_is_locked(dentry->d_parent->d_inode));
|
||||
BUG_ON(dentry->d_name.len != name->len); /* d_lookup gives this */
|
||||
@@ -3038,7 +3038,7 @@ static int prepend(char **buffer, int *buflen, const char *str, int namelen)
|
||||
* Data dependency barrier is needed to make sure that we see that terminating
|
||||
* NUL. Alpha strikes again, film at 11...
|
||||
*/
|
||||
static int prepend_name(char **buffer, int *buflen, struct qstr *name)
|
||||
static int prepend_name(char **buffer, int *buflen, const struct qstr *name)
|
||||
{
|
||||
const char *dname = ACCESS_ONCE(name->name);
|
||||
u32 dlen = ACCESS_ONCE(name->len);
|
||||
|
||||
+3
-3
@@ -358,8 +358,8 @@ ext2_readdir(struct file *file, struct dir_context *ctx)
|
||||
* and the entry itself. Page is returned mapped and unlocked.
|
||||
* Entry is guaranteed to be valid.
|
||||
*/
|
||||
struct ext2_dir_entry_2 *ext2_find_entry (struct inode * dir,
|
||||
struct qstr *child, struct page ** res_page)
|
||||
struct ext2_dir_entry_2 *ext2_find_entry (struct inode *dir,
|
||||
const struct qstr *child, struct page **res_page)
|
||||
{
|
||||
const char *name = child->name;
|
||||
int namelen = child->len;
|
||||
@@ -435,7 +435,7 @@ struct ext2_dir_entry_2 * ext2_dotdot (struct inode *dir, struct page **p)
|
||||
return de;
|
||||
}
|
||||
|
||||
ino_t ext2_inode_by_name(struct inode *dir, struct qstr *child)
|
||||
ino_t ext2_inode_by_name(struct inode *dir, const struct qstr *child)
|
||||
{
|
||||
ino_t res = 0;
|
||||
struct ext2_dir_entry_2 *de;
|
||||
|
||||
+2
-2
@@ -757,9 +757,9 @@ extern void ext2_rsv_window_add(struct super_block *sb, struct ext2_reserve_wind
|
||||
|
||||
/* dir.c */
|
||||
extern int ext2_add_link (struct dentry *, struct inode *);
|
||||
extern ino_t ext2_inode_by_name(struct inode *, struct qstr *);
|
||||
extern ino_t ext2_inode_by_name(struct inode *, const struct qstr *);
|
||||
extern int ext2_make_empty(struct inode *, struct inode *);
|
||||
extern struct ext2_dir_entry_2 * ext2_find_entry (struct inode *,struct qstr *, struct page **);
|
||||
extern struct ext2_dir_entry_2 * ext2_find_entry (struct inode *,const struct qstr *, struct page **);
|
||||
extern int ext2_delete_entry (struct ext2_dir_entry_2 *, struct page *);
|
||||
extern int ext2_empty_dir (struct inode *);
|
||||
extern struct ext2_dir_entry_2 * ext2_dotdot (struct inode *, struct page **);
|
||||
|
||||
+2
-2
@@ -219,7 +219,7 @@ static struct f2fs_dir_entry *find_in_level(struct inode *dir,
|
||||
* Entry is guaranteed to be valid.
|
||||
*/
|
||||
struct f2fs_dir_entry *f2fs_find_entry(struct inode *dir,
|
||||
struct qstr *child, struct page **res_page)
|
||||
const struct qstr *child, struct page **res_page)
|
||||
{
|
||||
unsigned long npages = dir_blocks(dir);
|
||||
struct f2fs_dir_entry *de = NULL;
|
||||
@@ -272,7 +272,7 @@ struct f2fs_dir_entry *f2fs_parent_dir(struct inode *dir, struct page **p)
|
||||
return f2fs_find_entry(dir, &dotdot, p);
|
||||
}
|
||||
|
||||
ino_t f2fs_inode_by_name(struct inode *dir, struct qstr *qstr,
|
||||
ino_t f2fs_inode_by_name(struct inode *dir, const struct qstr *qstr,
|
||||
struct page **page)
|
||||
{
|
||||
ino_t res = 0;
|
||||
|
||||
+2
-2
@@ -1914,10 +1914,10 @@ struct page *init_inode_metadata(struct inode *, struct inode *,
|
||||
void update_parent_metadata(struct inode *, struct inode *, unsigned int);
|
||||
int room_for_filename(const void *, int, int);
|
||||
void f2fs_drop_nlink(struct inode *, struct inode *);
|
||||
struct f2fs_dir_entry *f2fs_find_entry(struct inode *, struct qstr *,
|
||||
struct f2fs_dir_entry *f2fs_find_entry(struct inode *, const struct qstr *,
|
||||
struct page **);
|
||||
struct f2fs_dir_entry *f2fs_parent_dir(struct inode *, struct page **);
|
||||
ino_t f2fs_inode_by_name(struct inode *, struct qstr *, struct page **);
|
||||
ino_t f2fs_inode_by_name(struct inode *, const struct qstr *, struct page **);
|
||||
void f2fs_set_link(struct inode *, struct f2fs_dir_entry *,
|
||||
struct page *, struct inode *);
|
||||
int update_dent_inode(struct inode *, struct inode *, const struct qstr *);
|
||||
|
||||
+3
-3
@@ -652,8 +652,8 @@ out_free:
|
||||
return err;
|
||||
}
|
||||
|
||||
static int vfat_add_entry(struct inode *dir, struct qstr *qname, int is_dir,
|
||||
int cluster, struct timespec *ts,
|
||||
static int vfat_add_entry(struct inode *dir, const struct qstr *qname,
|
||||
int is_dir, int cluster, struct timespec *ts,
|
||||
struct fat_slot_info *sinfo)
|
||||
{
|
||||
struct msdos_dir_slot *slots;
|
||||
@@ -688,7 +688,7 @@ cleanup:
|
||||
return err;
|
||||
}
|
||||
|
||||
static int vfat_find(struct inode *dir, struct qstr *qname,
|
||||
static int vfat_find(struct inode *dir, const struct qstr *qname,
|
||||
struct fat_slot_info *sinfo)
|
||||
{
|
||||
unsigned int len = vfat_striptail_len(qname);
|
||||
|
||||
+2
-2
@@ -146,7 +146,7 @@ static void fuse_invalidate_entry(struct dentry *entry)
|
||||
}
|
||||
|
||||
static void fuse_lookup_init(struct fuse_conn *fc, struct fuse_args *args,
|
||||
u64 nodeid, struct qstr *name,
|
||||
u64 nodeid, const struct qstr *name,
|
||||
struct fuse_entry_out *outarg)
|
||||
{
|
||||
memset(outarg, 0, sizeof(struct fuse_entry_out));
|
||||
@@ -282,7 +282,7 @@ int fuse_valid_type(int m)
|
||||
S_ISBLK(m) || S_ISFIFO(m) || S_ISSOCK(m);
|
||||
}
|
||||
|
||||
int fuse_lookup_name(struct super_block *sb, u64 nodeid, struct qstr *name,
|
||||
int fuse_lookup_name(struct super_block *sb, u64 nodeid, const struct qstr *name,
|
||||
struct fuse_entry_out *outarg, struct inode **inode)
|
||||
{
|
||||
struct fuse_conn *fc = get_fuse_conn_super(sb);
|
||||
|
||||
+1
-1
@@ -704,7 +704,7 @@ struct inode *fuse_iget(struct super_block *sb, u64 nodeid,
|
||||
int generation, struct fuse_attr *attr,
|
||||
u64 attr_valid, u64 attr_version);
|
||||
|
||||
int fuse_lookup_name(struct super_block *sb, u64 nodeid, struct qstr *name,
|
||||
int fuse_lookup_name(struct super_block *sb, u64 nodeid, const struct qstr *name,
|
||||
struct fuse_entry_out *outarg, struct inode **inode);
|
||||
|
||||
/**
|
||||
|
||||
+2
-6
@@ -673,13 +673,11 @@ static struct dentry *fuse_get_dentry(struct super_block *sb,
|
||||
inode = ilookup5(sb, handle->nodeid, fuse_inode_eq, &handle->nodeid);
|
||||
if (!inode) {
|
||||
struct fuse_entry_out outarg;
|
||||
struct qstr name;
|
||||
const struct qstr name = QSTR_INIT(".", 1);
|
||||
|
||||
if (!fc->export_support)
|
||||
goto out_err;
|
||||
|
||||
name.len = 1;
|
||||
name.name = ".";
|
||||
err = fuse_lookup_name(sb, handle->nodeid, &name, &outarg,
|
||||
&inode);
|
||||
if (err && err != -ENOENT)
|
||||
@@ -775,14 +773,12 @@ static struct dentry *fuse_get_parent(struct dentry *child)
|
||||
struct inode *inode;
|
||||
struct dentry *parent;
|
||||
struct fuse_entry_out outarg;
|
||||
struct qstr name;
|
||||
const struct qstr name = QSTR_INIT("..", 2);
|
||||
int err;
|
||||
|
||||
if (!fc->export_support)
|
||||
return ERR_PTR(-ESTALE);
|
||||
|
||||
name.len = 2;
|
||||
name.name = "..";
|
||||
err = fuse_lookup_name(child_inode->i_sb, get_node_id(child_inode),
|
||||
&name, &outarg, &inode);
|
||||
if (err) {
|
||||
|
||||
+6
-6
@@ -20,7 +20,7 @@
|
||||
*
|
||||
* Given the ID of the parent and the name build a search key.
|
||||
*/
|
||||
void hfs_cat_build_key(struct super_block *sb, btree_key *key, u32 parent, struct qstr *name)
|
||||
void hfs_cat_build_key(struct super_block *sb, btree_key *key, u32 parent, const struct qstr *name)
|
||||
{
|
||||
key->cat.reserved = 0;
|
||||
key->cat.ParID = cpu_to_be32(parent);
|
||||
@@ -64,7 +64,7 @@ static int hfs_cat_build_record(hfs_cat_rec *rec, u32 cnid, struct inode *inode)
|
||||
|
||||
static int hfs_cat_build_thread(struct super_block *sb,
|
||||
hfs_cat_rec *rec, int type,
|
||||
u32 parentid, struct qstr *name)
|
||||
u32 parentid, const struct qstr *name)
|
||||
{
|
||||
rec->type = type;
|
||||
memset(rec->thread.reserved, 0, sizeof(rec->thread.reserved));
|
||||
@@ -79,7 +79,7 @@ static int hfs_cat_build_thread(struct super_block *sb,
|
||||
* Add a new file or directory to the catalog B-tree and
|
||||
* return a (struct hfs_cat_entry) for it in '*result'.
|
||||
*/
|
||||
int hfs_cat_create(u32 cnid, struct inode *dir, struct qstr *str, struct inode *inode)
|
||||
int hfs_cat_create(u32 cnid, struct inode *dir, const struct qstr *str, struct inode *inode)
|
||||
{
|
||||
struct hfs_find_data fd;
|
||||
struct super_block *sb;
|
||||
@@ -210,7 +210,7 @@ int hfs_cat_find_brec(struct super_block *sb, u32 cnid,
|
||||
* Delete the indicated file or directory.
|
||||
* The associated thread is also removed unless ('with_thread'==0).
|
||||
*/
|
||||
int hfs_cat_delete(u32 cnid, struct inode *dir, struct qstr *str)
|
||||
int hfs_cat_delete(u32 cnid, struct inode *dir, const struct qstr *str)
|
||||
{
|
||||
struct super_block *sb;
|
||||
struct hfs_find_data fd;
|
||||
@@ -277,8 +277,8 @@ out:
|
||||
* If the destination exists it is removed and a
|
||||
* (struct hfs_cat_entry) for it is returned in '*result'.
|
||||
*/
|
||||
int hfs_cat_move(u32 cnid, struct inode *src_dir, struct qstr *src_name,
|
||||
struct inode *dst_dir, struct qstr *dst_name)
|
||||
int hfs_cat_move(u32 cnid, struct inode *src_dir, const struct qstr *src_name,
|
||||
struct inode *dst_dir, const struct qstr *dst_name)
|
||||
{
|
||||
struct super_block *sb;
|
||||
struct hfs_find_data src_fd, dst_fd;
|
||||
|
||||
+7
-7
@@ -178,11 +178,11 @@ extern int hfs_clear_vbm_bits(struct super_block *, u16, u16);
|
||||
extern int hfs_cat_keycmp(const btree_key *, const btree_key *);
|
||||
struct hfs_find_data;
|
||||
extern int hfs_cat_find_brec(struct super_block *, u32, struct hfs_find_data *);
|
||||
extern int hfs_cat_create(u32, struct inode *, struct qstr *, struct inode *);
|
||||
extern int hfs_cat_delete(u32, struct inode *, struct qstr *);
|
||||
extern int hfs_cat_move(u32, struct inode *, struct qstr *,
|
||||
struct inode *, struct qstr *);
|
||||
extern void hfs_cat_build_key(struct super_block *, btree_key *, u32, struct qstr *);
|
||||
extern int hfs_cat_create(u32, struct inode *, const struct qstr *, struct inode *);
|
||||
extern int hfs_cat_delete(u32, struct inode *, const struct qstr *);
|
||||
extern int hfs_cat_move(u32, struct inode *, const struct qstr *,
|
||||
struct inode *, const struct qstr *);
|
||||
extern void hfs_cat_build_key(struct super_block *, btree_key *, u32, const struct qstr *);
|
||||
|
||||
/* dir.c */
|
||||
extern const struct file_operations hfs_dir_operations;
|
||||
@@ -201,7 +201,7 @@ extern int hfs_get_block(struct inode *, sector_t, struct buffer_head *, int);
|
||||
extern const struct address_space_operations hfs_aops;
|
||||
extern const struct address_space_operations hfs_btree_aops;
|
||||
|
||||
extern struct inode *hfs_new_inode(struct inode *, struct qstr *, umode_t);
|
||||
extern struct inode *hfs_new_inode(struct inode *, const struct qstr *, umode_t);
|
||||
extern void hfs_inode_write_fork(struct inode *, struct hfs_extent *, __be32 *, __be32 *);
|
||||
extern int hfs_write_inode(struct inode *, struct writeback_control *);
|
||||
extern int hfs_inode_setattr(struct dentry *, struct iattr *);
|
||||
@@ -237,7 +237,7 @@ extern int hfs_compare_dentry(const struct dentry *parent, const struct dentry *
|
||||
unsigned int len, const char *str, const struct qstr *name);
|
||||
|
||||
/* trans.c */
|
||||
extern void hfs_asc2mac(struct super_block *, struct hfs_name *, struct qstr *);
|
||||
extern void hfs_asc2mac(struct super_block *, struct hfs_name *, const struct qstr *);
|
||||
extern int hfs_mac2asc(struct super_block *, char *, const struct hfs_name *);
|
||||
|
||||
/* super.c */
|
||||
|
||||
+1
-1
@@ -177,7 +177,7 @@ const struct address_space_operations hfs_aops = {
|
||||
/*
|
||||
* hfs_new_inode
|
||||
*/
|
||||
struct inode *hfs_new_inode(struct inode *dir, struct qstr *name, umode_t mode)
|
||||
struct inode *hfs_new_inode(struct inode *dir, const struct qstr *name, umode_t mode)
|
||||
{
|
||||
struct super_block *sb = dir->i_sb;
|
||||
struct inode *inode = new_inode(sb);
|
||||
|
||||
+1
-1
@@ -94,7 +94,7 @@ out:
|
||||
* This routine is a inverse to hfs_mac2triv().
|
||||
* A ':' is replaced by a '/'.
|
||||
*/
|
||||
void hfs_asc2mac(struct super_block *sb, struct hfs_name *out, struct qstr *in)
|
||||
void hfs_asc2mac(struct super_block *sb, struct hfs_name *out, const struct qstr *in)
|
||||
{
|
||||
struct nls_table *nls_disk = HFS_SB(sb)->nls_disk;
|
||||
struct nls_table *nls_io = HFS_SB(sb)->nls_io;
|
||||
|
||||
@@ -40,7 +40,7 @@ int hfsplus_cat_bin_cmp_key(const hfsplus_btree_key *k1,
|
||||
|
||||
/* Generates key for catalog file/folders record. */
|
||||
int hfsplus_cat_build_key(struct super_block *sb,
|
||||
hfsplus_btree_key *key, u32 parent, struct qstr *str)
|
||||
hfsplus_btree_key *key, u32 parent, const struct qstr *str)
|
||||
{
|
||||
int len, err;
|
||||
|
||||
@@ -174,7 +174,7 @@ static int hfsplus_cat_build_record(hfsplus_cat_entry *entry,
|
||||
|
||||
static int hfsplus_fill_cat_thread(struct super_block *sb,
|
||||
hfsplus_cat_entry *entry, int type,
|
||||
u32 parentid, struct qstr *str)
|
||||
u32 parentid, const struct qstr *str)
|
||||
{
|
||||
int err;
|
||||
|
||||
@@ -250,7 +250,7 @@ static void hfsplus_subfolders_dec(struct inode *dir)
|
||||
}
|
||||
|
||||
int hfsplus_create_cat(u32 cnid, struct inode *dir,
|
||||
struct qstr *str, struct inode *inode)
|
||||
const struct qstr *str, struct inode *inode)
|
||||
{
|
||||
struct super_block *sb = dir->i_sb;
|
||||
struct hfs_find_data fd;
|
||||
@@ -318,7 +318,7 @@ err2:
|
||||
return err;
|
||||
}
|
||||
|
||||
int hfsplus_delete_cat(u32 cnid, struct inode *dir, struct qstr *str)
|
||||
int hfsplus_delete_cat(u32 cnid, struct inode *dir, const struct qstr *str)
|
||||
{
|
||||
struct super_block *sb = dir->i_sb;
|
||||
struct hfs_find_data fd;
|
||||
@@ -415,8 +415,8 @@ out:
|
||||
}
|
||||
|
||||
int hfsplus_rename_cat(u32 cnid,
|
||||
struct inode *src_dir, struct qstr *src_name,
|
||||
struct inode *dst_dir, struct qstr *dst_name)
|
||||
struct inode *src_dir, const struct qstr *src_name,
|
||||
struct inode *dst_dir, const struct qstr *dst_name)
|
||||
{
|
||||
struct super_block *sb = src_dir->i_sb;
|
||||
struct hfs_find_data src_fd, dst_fd;
|
||||
|
||||
@@ -445,17 +445,17 @@ int hfsplus_cat_case_cmp_key(const hfsplus_btree_key *k1,
|
||||
int hfsplus_cat_bin_cmp_key(const hfsplus_btree_key *k1,
|
||||
const hfsplus_btree_key *k2);
|
||||
int hfsplus_cat_build_key(struct super_block *sb, hfsplus_btree_key *key,
|
||||
u32 parent, struct qstr *str);
|
||||
u32 parent, const struct qstr *str);
|
||||
void hfsplus_cat_build_key_with_cnid(struct super_block *sb,
|
||||
hfsplus_btree_key *key, u32 parent);
|
||||
void hfsplus_cat_set_perms(struct inode *inode, struct hfsplus_perm *perms);
|
||||
int hfsplus_find_cat(struct super_block *sb, u32 cnid,
|
||||
struct hfs_find_data *fd);
|
||||
int hfsplus_create_cat(u32 cnid, struct inode *dir, struct qstr *str,
|
||||
int hfsplus_create_cat(u32 cnid, struct inode *dir, const struct qstr *str,
|
||||
struct inode *inode);
|
||||
int hfsplus_delete_cat(u32 cnid, struct inode *dir, struct qstr *str);
|
||||
int hfsplus_rename_cat(u32 cnid, struct inode *src_dir, struct qstr *src_name,
|
||||
struct inode *dst_dir, struct qstr *dst_name);
|
||||
int hfsplus_delete_cat(u32 cnid, struct inode *dir, const struct qstr *str);
|
||||
int hfsplus_rename_cat(u32 cnid, struct inode *src_dir, const struct qstr *src_name,
|
||||
struct inode *dst_dir, const struct qstr *dst_name);
|
||||
|
||||
/* dir.c */
|
||||
extern const struct inode_operations hfsplus_dir_inode_operations;
|
||||
|
||||
+2
-2
@@ -156,7 +156,7 @@ static pgoff_t hash_index(u32 hash, int round)
|
||||
|
||||
static struct page *logfs_get_dd_page(struct inode *dir, struct dentry *dentry)
|
||||
{
|
||||
struct qstr *name = &dentry->d_name;
|
||||
const struct qstr *name = &dentry->d_name;
|
||||
struct page *page;
|
||||
struct logfs_disk_dentry *dd;
|
||||
u32 hash = logfs_hash_32(name->name, name->len, 0);
|
||||
@@ -323,7 +323,7 @@ static int logfs_readdir(struct file *file, struct dir_context *ctx)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void logfs_set_name(struct logfs_disk_dentry *dd, struct qstr *name)
|
||||
static void logfs_set_name(struct logfs_disk_dentry *dd, const struct qstr *name)
|
||||
{
|
||||
dd->namelen = cpu_to_be16(name->len);
|
||||
memcpy(dd->name, name->name, name->len);
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user