* Lookup/Create a block at offset 'block' into 'inode'. We currently do
* not support creation of new blocks, so we return -EIO for this case.
*/
-int
-adfs_get_block(struct inode *inode, sector_t block, struct buffer_head *bh, int create)
+static int
+adfs_get_block(struct inode *inode, sector_t block, struct buffer_head *bh,
+ int create)
{
if (block < 0)
goto abort_negative;
return generic_block_bmap(mapping, block, adfs_get_block);
}
-static struct address_space_operations adfs_aops = {
+static const struct address_space_operations adfs_aops = {
.readpage = adfs_readpage,
.writepage = adfs_writepage,
.sync_page = block_sync_page,
return;
cur_time:
- *tv = CURRENT_TIME;
+ *tv = CURRENT_TIME_SEC;
return;
too_early:
inode->i_ino = obj->file_id;
inode->i_size = obj->size;
inode->i_nlink = 2;
- inode->i_blksize = PAGE_SIZE;
inode->i_blocks = (inode->i_size + sb->s_blocksize - 1) >>
sb->s_blocksize_bits;
* The adfs-specific inode data has already been updated by
* adfs_notify_change()
*/
-void adfs_write_inode(struct inode *inode, int unused)
+int adfs_write_inode(struct inode *inode, int unused)
{
struct super_block *sb = inode->i_sb;
struct object_info obj;
+ int ret;
lock_kernel();
obj.file_id = inode->i_ino;
obj.attr = ADFS_I(inode)->attr;
obj.size = inode->i_size;
- adfs_dir_update(sb, &obj);
+ ret = adfs_dir_update(sb, &obj);
unlock_kernel();
+ return ret;
}
MODULE_LICENSE("GPL");