| /kernel/linux/linux-6.6/fs/gfs2/ |
| D | ops_fstype.c | 65 void free_sbd(struct gfs2_sbd *sdp) in free_sbd() argument 67 if (sdp->sd_lkstats) in free_sbd() 68 free_percpu(sdp->sd_lkstats); in free_sbd() 69 kfree(sdp); in free_sbd() 74 struct gfs2_sbd *sdp; in init_sbd() local 77 sdp = kzalloc(sizeof(struct gfs2_sbd), GFP_KERNEL); in init_sbd() 78 if (!sdp) in init_sbd() 81 sdp->sd_vfs = sb; in init_sbd() 82 sdp->sd_lkstats = alloc_percpu(struct gfs2_pcpu_lkstats); in init_sbd() 83 if (!sdp->sd_lkstats) in init_sbd() [all …]
|
| D | log.c | 35 static void gfs2_log_shutdown(struct gfs2_sbd *sdp); 39 * @sdp: the filesystem 48 unsigned int gfs2_struct2blk(struct gfs2_sbd *sdp, unsigned int nstruct) in gfs2_struct2blk() argument 55 first = sdp->sd_ldptrs; in gfs2_struct2blk() 59 second = sdp->sd_inptrs; in gfs2_struct2blk() 94 * @sdp: The superblock 100 static int gfs2_ail1_start_one(struct gfs2_sbd *sdp, in gfs2_ail1_start_one() argument 103 __releases(&sdp->sd_ail_lock) in gfs2_ail1_start_one() 104 __acquires(&sdp->sd_ail_lock) in gfs2_ail1_start_one() 115 gfs2_assert(sdp, bd->bd_tr == tr); in gfs2_ail1_start_one() [all …]
|
| D | util.c | 39 void gfs2_assert_i(struct gfs2_sbd *sdp) in gfs2_assert_i() argument 41 fs_emerg(sdp, "fatal assertion failed\n"); in gfs2_assert_i() 46 * @sdp: The GFS2 superblock 52 int check_journal_clean(struct gfs2_sbd *sdp, struct gfs2_jdesc *jd, in check_journal_clean() argument 65 fs_err(sdp, "Error %d locking journal for spectator " in check_journal_clean() 72 fs_err(sdp, "Error checking journal for spectator " in check_journal_clean() 79 fs_err(sdp, "Error parsing journal for spectator " in check_journal_clean() 86 fs_err(sdp, "jid=%u: Journal is dirty, so the first " in check_journal_clean() 98 * @sdp: the superblock 100 int gfs2_freeze_lock_shared(struct gfs2_sbd *sdp) in gfs2_freeze_lock_shared() argument [all …]
|
| D | sys.c | 39 struct gfs2_sbd *sdp = container_of(kobj, struct gfs2_sbd, sd_kobj); in gfs2_attr_show() local 41 return a->show ? a->show(sdp, buf) : 0; in gfs2_attr_show() 47 struct gfs2_sbd *sdp = container_of(kobj, struct gfs2_sbd, sd_kobj); in gfs2_attr_store() local 49 return a->store ? a->store(sdp, buf, len) : len; in gfs2_attr_store() 60 static ssize_t id_show(struct gfs2_sbd *sdp, char *buf) in id_show() argument 63 MAJOR(sdp->sd_vfs->s_dev), MINOR(sdp->sd_vfs->s_dev)); in id_show() 66 static ssize_t status_show(struct gfs2_sbd *sdp, char *buf) in status_show() argument 68 unsigned long f = sdp->sd_flags; in status_show() 107 (sdp->sd_jdesc ? sdp->sd_jdesc->jd_jid : 0), in status_show() 108 (sdp->sd_args.ar_spectator ? 1 : 0), in status_show() [all …]
|
| D | super.c | 55 * @sdp: The GFS2 superblock 59 void gfs2_jindex_free(struct gfs2_sbd *sdp) in gfs2_jindex_free() argument 64 spin_lock(&sdp->sd_jindex_spin); in gfs2_jindex_free() 65 list_add(&list, &sdp->sd_jindex_list); in gfs2_jindex_free() 66 list_del_init(&sdp->sd_jindex_list); in gfs2_jindex_free() 67 sdp->sd_journals = 0; in gfs2_jindex_free() 68 spin_unlock(&sdp->sd_jindex_spin); in gfs2_jindex_free() 70 down_write(&sdp->sd_log_flush_lock); in gfs2_jindex_free() 71 sdp->sd_jdesc = NULL; in gfs2_jindex_free() 72 up_write(&sdp->sd_log_flush_lock); in gfs2_jindex_free() [all …]
|
| D | trans.c | 28 static void gfs2_print_trans(struct gfs2_sbd *sdp, const struct gfs2_trans *tr) in gfs2_print_trans() argument 30 fs_warn(sdp, "Transaction created at: %pSR\n", (void *)tr->tr_ip); in gfs2_print_trans() 31 fs_warn(sdp, "blocks=%u revokes=%u reserved=%u touched=%u\n", in gfs2_print_trans() 34 fs_warn(sdp, "Buf %u/%u Databuf %u/%u Revoke %u\n", in gfs2_print_trans() 40 int __gfs2_trans_begin(struct gfs2_trans *tr, struct gfs2_sbd *sdp, in __gfs2_trans_begin() argument 47 gfs2_print_trans(sdp, current->journal_info); in __gfs2_trans_begin() 52 if (!test_bit(SDF_JOURNAL_LIVE, &sdp->sd_flags)) in __gfs2_trans_begin() 65 tr->tr_reserved += blocks + 1 + DIV_ROUND_UP(blocks - 1, databuf_limit(sdp)); in __gfs2_trans_begin() 73 if (gfs2_assert_warn(sdp, tr->tr_reserved <= sdp->sd_jdesc->jd_blocks)) in __gfs2_trans_begin() 76 sb_start_intwrite(sdp->sd_vfs); in __gfs2_trans_begin() [all …]
|
| D | util.h | 28 void gfs2_assert_i(struct gfs2_sbd *sdp); 30 #define gfs2_assert(sdp, assertion) \ argument 33 gfs2_assert_i(sdp); \ 39 void gfs2_assert_withdraw_i(struct gfs2_sbd *sdp, char *assertion, 43 #define gfs2_assert_withdraw(sdp, assertion) \ argument 47 gfs2_assert_withdraw_i((sdp), #assertion, \ 52 #define gfs2_assert_withdraw_delayed(sdp, assertion) \ argument 56 gfs2_assert_withdraw_i((sdp), #assertion, \ 61 void gfs2_assert_warn_i(struct gfs2_sbd *sdp, char *assertion, 64 #define gfs2_assert_warn(sdp, assertion) \ argument [all …]
|
| D | log.h | 25 * @sdp: the filesystem 29 static inline void gfs2_log_lock(struct gfs2_sbd *sdp) in gfs2_log_lock() argument 30 __acquires(&sdp->sd_log_lock) in gfs2_log_lock() 32 spin_lock(&sdp->sd_log_lock); in gfs2_log_lock() 37 * @sdp: the filesystem 41 static inline void gfs2_log_unlock(struct gfs2_sbd *sdp) in gfs2_log_unlock() argument 42 __releases(&sdp->sd_log_lock) in gfs2_log_unlock() 44 spin_unlock(&sdp->sd_log_lock); in gfs2_log_unlock() 47 static inline void gfs2_log_pointers_init(struct gfs2_sbd *sdp, in gfs2_log_pointers_init() argument 50 if (++value == sdp->sd_jdesc->jd_blocks) { in gfs2_log_pointers_init() [all …]
|
| D | quota.c | 85 static unsigned int gfs2_qd_hash(const struct gfs2_sbd *sdp, in gfs2_qd_hash() argument 90 h = jhash(&sdp, sizeof(struct gfs2_sbd *), 0); in gfs2_qd_hash() 109 struct gfs2_sbd *sdp = qd->qd_sbd; in gfs2_qd_dealloc() local 112 if (atomic_dec_and_test(&sdp->sd_quota_count)) in gfs2_qd_dealloc() 113 wake_up(&sdp->sd_kill_wait); in gfs2_qd_dealloc() 118 struct gfs2_sbd *sdp = qd->qd_sbd; in gfs2_qd_dispose() local 128 if (!gfs2_withdrawing_or_withdrawn(sdp)) { in gfs2_qd_dispose() 129 gfs2_assert_warn(sdp, !qd->qd_change); in gfs2_qd_dispose() 130 gfs2_assert_warn(sdp, !qd->qd_slot_ref); in gfs2_qd_dispose() 131 gfs2_assert_warn(sdp, !qd->qd_bh_count); in gfs2_qd_dispose() [all …]
|
| D | lops.c | 37 * @sdp: The superblock 42 void gfs2_pin(struct gfs2_sbd *sdp, struct buffer_head *bh) in gfs2_pin() argument 50 gfs2_assert_withdraw(sdp, 0); in gfs2_pin() 52 gfs2_io_error_bh_wd(sdp, bh); in gfs2_pin() 57 spin_lock(&sdp->sd_ail_lock); in gfs2_pin() 60 spin_unlock(&sdp->sd_ail_lock); in gfs2_pin() 62 atomic_inc(&sdp->sd_log_pinned); in gfs2_pin() 74 struct gfs2_sbd *sdp = gl->gl_name.ln_sbd; in maybe_release_space() local 82 if (sdp->sd_args.ar_discard) in maybe_release_space() 83 gfs2_rgrp_send_discards(sdp, rgd->rd_data0, bd->bd_bh, bi, 1, NULL); in maybe_release_space() [all …]
|
| D | super.h | 18 void gfs2_lm_unmount(struct gfs2_sbd *sdp); 20 static inline unsigned int gfs2_jindex_size(struct gfs2_sbd *sdp) in gfs2_jindex_size() argument 23 spin_lock(&sdp->sd_jindex_spin); in gfs2_jindex_size() 24 x = sdp->sd_journals; in gfs2_jindex_size() 25 spin_unlock(&sdp->sd_jindex_spin); in gfs2_jindex_size() 29 void gfs2_jindex_free(struct gfs2_sbd *sdp); 31 struct gfs2_jdesc *gfs2_jdesc_find(struct gfs2_sbd *sdp, unsigned int jid); 33 int gfs2_lookup_in_master_dir(struct gfs2_sbd *sdp, char *filename, 36 int gfs2_make_fs_rw(struct gfs2_sbd *sdp); 37 void gfs2_make_fs_ro(struct gfs2_sbd *sdp); [all …]
|
| D | recovery.c | 118 int __get_log_header(struct gfs2_sbd *sdp, const struct gfs2_log_header *lh, in __get_log_header() argument 135 sdp->sd_sb.sb_bsize - LH_V1_SIZE - 4); in __get_log_header() 168 struct gfs2_sbd *sdp = GFS2_SB(jd->jd_inode); in get_log_header() local 176 error = __get_log_header(sdp, (const struct gfs2_log_header *)bh->b_data, in get_log_header() 199 struct gfs2_sbd *sdp = GFS2_SB(jd->jd_inode); in foreach_descriptor() local 213 if (gfs2_meta_check(sdp, bh)) { in foreach_descriptor() 234 } else if (gfs2_metatype_check(sdp, bh, GFS2_METATYPE_LD)) { in foreach_descriptor() 265 struct gfs2_sbd *sdp = GFS2_SB(jd->jd_inode); in clean_journal() local 269 gfs2_write_log_header(sdp, jd, head->lh_sequence + 1, 0, lblock, in clean_journal() 272 if (jd->jd_jid == sdp->sd_lockstruct.ls_jid) { in clean_journal() [all …]
|
| /kernel/linux/linux-5.10/fs/gfs2/ |
| D | log.c | 35 static void gfs2_log_shutdown(struct gfs2_sbd *sdp); 39 * @sdp: the filesystem 48 unsigned int gfs2_struct2blk(struct gfs2_sbd *sdp, unsigned int nstruct) in gfs2_struct2blk() argument 54 first = sdp->sd_ldptrs; in gfs2_struct2blk() 57 second = sdp->sd_inptrs; in gfs2_struct2blk() 84 * @sdp: the filesystem 90 static int gfs2_ail1_start_one(struct gfs2_sbd *sdp, in gfs2_ail1_start_one() argument 93 __releases(&sdp->sd_ail_lock) in gfs2_ail1_start_one() 94 __acquires(&sdp->sd_ail_lock) in gfs2_ail1_start_one() 105 gfs2_assert(sdp, bd->bd_tr == tr); in gfs2_ail1_start_one() [all …]
|
| D | ops_fstype.c | 65 void free_sbd(struct gfs2_sbd *sdp) in free_sbd() argument 67 if (sdp->sd_lkstats) in free_sbd() 68 free_percpu(sdp->sd_lkstats); in free_sbd() 69 kfree(sdp); in free_sbd() 74 struct gfs2_sbd *sdp; in init_sbd() local 77 sdp = kzalloc(sizeof(struct gfs2_sbd), GFP_KERNEL); in init_sbd() 78 if (!sdp) in init_sbd() 81 sdp->sd_vfs = sb; in init_sbd() 82 sdp->sd_lkstats = alloc_percpu(struct gfs2_pcpu_lkstats); in init_sbd() 83 if (!sdp->sd_lkstats) in init_sbd() [all …]
|
| D | util.c | 38 void gfs2_assert_i(struct gfs2_sbd *sdp) in gfs2_assert_i() argument 40 fs_emerg(sdp, "fatal assertion failed\n"); in gfs2_assert_i() 45 * @sdp: The GFS2 superblock 50 int check_journal_clean(struct gfs2_sbd *sdp, struct gfs2_jdesc *jd, in check_journal_clean() argument 63 fs_err(sdp, "Error %d locking journal for spectator " in check_journal_clean() 70 fs_err(sdp, "Error checking journal for spectator " in check_journal_clean() 77 fs_err(sdp, "Error parsing journal for spectator " in check_journal_clean() 84 fs_err(sdp, "jid=%u: Journal is dirty, so the first " in check_journal_clean() 96 * @sdp: the superblock 100 int gfs2_freeze_lock(struct gfs2_sbd *sdp, struct gfs2_holder *freeze_gh, in gfs2_freeze_lock() argument [all …]
|
| D | sys.c | 39 struct gfs2_sbd *sdp = container_of(kobj, struct gfs2_sbd, sd_kobj); in gfs2_attr_show() local 41 return a->show ? a->show(sdp, buf) : 0; in gfs2_attr_show() 47 struct gfs2_sbd *sdp = container_of(kobj, struct gfs2_sbd, sd_kobj); in gfs2_attr_store() local 49 return a->store ? a->store(sdp, buf, len) : len; in gfs2_attr_store() 60 static ssize_t id_show(struct gfs2_sbd *sdp, char *buf) in id_show() argument 63 MAJOR(sdp->sd_vfs->s_dev), MINOR(sdp->sd_vfs->s_dev)); in id_show() 66 static ssize_t fsname_show(struct gfs2_sbd *sdp, char *buf) in fsname_show() argument 68 return snprintf(buf, PAGE_SIZE, "%s\n", sdp->sd_fsname); in fsname_show() 71 static ssize_t uuid_show(struct gfs2_sbd *sdp, char *buf) in uuid_show() argument 73 struct super_block *s = sdp->sd_vfs; in uuid_show() [all …]
|
| D | super.c | 55 * @sdp: The GFS2 superblock 59 void gfs2_jindex_free(struct gfs2_sbd *sdp) in gfs2_jindex_free() argument 64 spin_lock(&sdp->sd_jindex_spin); in gfs2_jindex_free() 65 list_add(&list, &sdp->sd_jindex_list); in gfs2_jindex_free() 66 list_del_init(&sdp->sd_jindex_list); in gfs2_jindex_free() 67 sdp->sd_journals = 0; in gfs2_jindex_free() 68 spin_unlock(&sdp->sd_jindex_spin); in gfs2_jindex_free() 70 sdp->sd_jdesc = NULL; in gfs2_jindex_free() 99 struct gfs2_jdesc *gfs2_jdesc_find(struct gfs2_sbd *sdp, unsigned int jid) in gfs2_jdesc_find() argument 103 spin_lock(&sdp->sd_jindex_spin); in gfs2_jdesc_find() [all …]
|
| D | util.h | 28 void gfs2_assert_i(struct gfs2_sbd *sdp); 30 #define gfs2_assert(sdp, assertion) \ argument 33 gfs2_assert_i(sdp); \ 39 void gfs2_assert_withdraw_i(struct gfs2_sbd *sdp, char *assertion, 43 #define gfs2_assert_withdraw(sdp, assertion) \ argument 47 gfs2_assert_withdraw_i((sdp), #assertion, \ 52 #define gfs2_assert_withdraw_delayed(sdp, assertion) \ argument 56 gfs2_assert_withdraw_i((sdp), #assertion, \ 61 void gfs2_assert_warn_i(struct gfs2_sbd *sdp, char *assertion, 64 #define gfs2_assert_warn(sdp, assertion) \ argument [all …]
|
| D | trans.c | 28 static void gfs2_print_trans(struct gfs2_sbd *sdp, const struct gfs2_trans *tr) in gfs2_print_trans() argument 30 fs_warn(sdp, "Transaction created at: %pSR\n", (void *)tr->tr_ip); in gfs2_print_trans() 31 fs_warn(sdp, "blocks=%u revokes=%u reserved=%u touched=%u\n", in gfs2_print_trans() 34 fs_warn(sdp, "Buf %u/%u Databuf %u/%u Revoke %u/%u\n", in gfs2_print_trans() 40 int gfs2_trans_begin(struct gfs2_sbd *sdp, unsigned int blocks, in gfs2_trans_begin() argument 47 gfs2_print_trans(sdp, current->journal_info); in gfs2_trans_begin() 52 if (!test_bit(SDF_JOURNAL_LIVE, &sdp->sd_flags)) in gfs2_trans_begin() 67 tr->tr_reserved += gfs2_struct2blk(sdp, revokes); in gfs2_trans_begin() 74 sb_start_intwrite(sdp->sd_vfs); in gfs2_trans_begin() 76 error = gfs2_log_reserve(sdp, tr->tr_reserved); in gfs2_trans_begin() [all …]
|
| D | log.h | 18 * @sdp: the filesystem 22 static inline void gfs2_log_lock(struct gfs2_sbd *sdp) in gfs2_log_lock() argument 23 __acquires(&sdp->sd_log_lock) in gfs2_log_lock() 25 spin_lock(&sdp->sd_log_lock); in gfs2_log_lock() 30 * @sdp: the filesystem 34 static inline void gfs2_log_unlock(struct gfs2_sbd *sdp) in gfs2_log_unlock() argument 35 __releases(&sdp->sd_log_lock) in gfs2_log_unlock() 37 spin_unlock(&sdp->sd_log_lock); in gfs2_log_unlock() 40 static inline void gfs2_log_pointers_init(struct gfs2_sbd *sdp, in gfs2_log_pointers_init() argument 43 if (++value == sdp->sd_jdesc->jd_blocks) { in gfs2_log_pointers_init() [all …]
|
| D | quota.c | 85 static unsigned int gfs2_qd_hash(const struct gfs2_sbd *sdp, in gfs2_qd_hash() argument 90 h = jhash(&sdp, sizeof(struct gfs2_sbd *), 0); in gfs2_qd_hash() 115 struct gfs2_sbd *sdp; in gfs2_qd_dispose() local 119 sdp = qd->qd_gl->gl_name.ln_sbd; in gfs2_qd_dispose() 132 gfs2_assert_warn(sdp, !qd->qd_change); in gfs2_qd_dispose() 133 gfs2_assert_warn(sdp, !qd->qd_slot_count); in gfs2_qd_dispose() 134 gfs2_assert_warn(sdp, !qd->qd_bh_count); in gfs2_qd_dispose() 137 atomic_dec(&sdp->sd_quota_count); in gfs2_qd_dispose() 211 static struct gfs2_quota_data *qd_alloc(unsigned hash, struct gfs2_sbd *sdp, struct kqid qid) in qd_alloc() argument 220 qd->qd_sbd = sdp; in qd_alloc() [all …]
|
| D | lops.c | 37 * @sdp: The superblock 42 void gfs2_pin(struct gfs2_sbd *sdp, struct buffer_head *bh) in gfs2_pin() argument 50 gfs2_assert_withdraw(sdp, 0); in gfs2_pin() 52 gfs2_io_error_bh_wd(sdp, bh); in gfs2_pin() 57 spin_lock(&sdp->sd_ail_lock); in gfs2_pin() 60 spin_unlock(&sdp->sd_ail_lock); in gfs2_pin() 62 atomic_inc(&sdp->sd_log_pinned); in gfs2_pin() 74 struct gfs2_sbd *sdp = gl->gl_name.ln_sbd; in maybe_release_space() local 81 if (sdp->sd_args.ar_discard) in maybe_release_space() 82 gfs2_rgrp_send_discards(sdp, rgd->rd_data0, bd->bd_bh, bi, 1, NULL); in maybe_release_space() [all …]
|
| D | super.h | 14 extern void gfs2_lm_unmount(struct gfs2_sbd *sdp); 16 static inline unsigned int gfs2_jindex_size(struct gfs2_sbd *sdp) in gfs2_jindex_size() argument 19 spin_lock(&sdp->sd_jindex_spin); in gfs2_jindex_size() 20 x = sdp->sd_journals; in gfs2_jindex_size() 21 spin_unlock(&sdp->sd_jindex_spin); in gfs2_jindex_size() 25 extern void gfs2_jindex_free(struct gfs2_sbd *sdp); 27 extern struct gfs2_jdesc *gfs2_jdesc_find(struct gfs2_sbd *sdp, unsigned int jid); 29 extern int gfs2_lookup_in_master_dir(struct gfs2_sbd *sdp, char *filename, 32 extern int gfs2_make_fs_rw(struct gfs2_sbd *sdp); 33 extern int gfs2_make_fs_ro(struct gfs2_sbd *sdp); [all …]
|
| D | recovery.c | 120 int __get_log_header(struct gfs2_sbd *sdp, const struct gfs2_log_header *lh, in __get_log_header() argument 137 sdp->sd_sb.sb_bsize - LH_V1_SIZE - 4); in __get_log_header() 170 struct gfs2_sbd *sdp = GFS2_SB(jd->jd_inode); in get_log_header() local 178 error = __get_log_header(sdp, (const struct gfs2_log_header *)bh->b_data, in get_log_header() 200 struct gfs2_sbd *sdp = GFS2_SB(jd->jd_inode); in foreach_descriptor() local 214 if (gfs2_meta_check(sdp, bh)) { in foreach_descriptor() 235 } else if (gfs2_metatype_check(sdp, bh, GFS2_METATYPE_LD)) { in foreach_descriptor() 266 struct gfs2_sbd *sdp = GFS2_SB(jd->jd_inode); in clean_journal() local 270 gfs2_write_log_header(sdp, jd, head->lh_sequence + 1, 0, lblock, in clean_journal() 273 if (jd->jd_jid == sdp->sd_lockstruct.ls_jid) { in clean_journal() [all …]
|
| /kernel/linux/linux-5.10/drivers/scsi/ |
| D | sg.c | 191 static Sg_fd *sg_add_sfp(Sg_device * sdp); 204 #define sg_printk(prefix, sdp, fmt, a...) \ argument 205 sdev_prefix_printk(prefix, (sdp)->device, \ 206 (sdp)->disk->disk_name, fmt, ##a) 246 open_wait(Sg_device *sdp, int flags) in open_wait() argument 251 while (sdp->open_cnt > 0) { in open_wait() 252 mutex_unlock(&sdp->open_rel_lock); in open_wait() 253 retval = wait_event_interruptible(sdp->open_wait, in open_wait() 254 (atomic_read(&sdp->detaching) || in open_wait() 255 !sdp->open_cnt)); in open_wait() [all …]
|