diff --git a/[refs] b/[refs] index 0ad35c295c4a..a315ad1a9211 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 5c7dd710f691d1b44c39e32d2f05b4286ff51f99 +refs/heads/master: bad115cfe5b509043b684d3a007ab54b80090aa1 diff --git a/trunk/drivers/acpi/bus.c b/trunk/drivers/acpi/bus.c index 3188da3df8da..3263b68cdfa3 100644 --- a/trunk/drivers/acpi/bus.c +++ b/trunk/drivers/acpi/bus.c @@ -250,10 +250,6 @@ static int __acpi_bus_set_power(struct acpi_device *device, int state) return -ENODEV; } - /* For D3cold we should execute _PS3, not _PS4. */ - if (state == ACPI_STATE_D3_COLD) - object_name[3] = '3'; - /* * Transition Power * ---------------- diff --git a/trunk/drivers/acpi/power.c b/trunk/drivers/acpi/power.c index 0500f719f63e..330bb4d75852 100644 --- a/trunk/drivers/acpi/power.c +++ b/trunk/drivers/acpi/power.c @@ -660,7 +660,7 @@ int acpi_power_on_resources(struct acpi_device *device, int state) int acpi_power_transition(struct acpi_device *device, int state) { - int result = 0; + int result; if (!device || (state < ACPI_STATE_D0) || (state > ACPI_STATE_D3_COLD)) return -EINVAL; @@ -679,11 +679,8 @@ int acpi_power_transition(struct acpi_device *device, int state) * (e.g. so the device doesn't lose power while transitioning). Then, * we dereference all power resources used in the current list. */ - if (state < ACPI_STATE_D3_COLD) - result = acpi_power_on_list( - &device->power.states[state].resources); - - if (!result && device->power.state < ACPI_STATE_D3_COLD) + result = acpi_power_on_list(&device->power.states[state].resources); + if (!result) acpi_power_off_list( &device->power.states[device->power.state].resources); diff --git a/trunk/drivers/acpi/scan.c b/trunk/drivers/acpi/scan.c index 85cbfdccc97c..7417267e88fa 100644 --- a/trunk/drivers/acpi/scan.c +++ b/trunk/drivers/acpi/scan.c @@ -908,10 +908,6 @@ static int acpi_bus_get_power_flags(struct acpi_device *device) device->power.states[ACPI_STATE_D3].flags.valid = 1; device->power.states[ACPI_STATE_D3].power = 0; - /* Set D3cold's explicit_set flag if _PS3 exists. */ - if (device->power.states[ACPI_STATE_D3_HOT].flags.explicit_set) - device->power.states[ACPI_STATE_D3_COLD].flags.explicit_set = 1; - acpi_bus_init_power(device); return 0; diff --git a/trunk/drivers/pci/pci-acpi.c b/trunk/drivers/pci/pci-acpi.c index 61e2fefeedab..1929c0c63b75 100644 --- a/trunk/drivers/pci/pci-acpi.c +++ b/trunk/drivers/pci/pci-acpi.c @@ -223,7 +223,7 @@ static int acpi_pci_set_power_state(struct pci_dev *dev, pci_power_t state) [PCI_D0] = ACPI_STATE_D0, [PCI_D1] = ACPI_STATE_D1, [PCI_D2] = ACPI_STATE_D2, - [PCI_D3hot] = ACPI_STATE_D3, + [PCI_D3hot] = ACPI_STATE_D3_HOT, [PCI_D3cold] = ACPI_STATE_D3 }; int error = -EINVAL; diff --git a/trunk/drivers/target/target_core_file.c b/trunk/drivers/target/target_core_file.c index f286955331a2..7ed58e2df791 100644 --- a/trunk/drivers/target/target_core_file.c +++ b/trunk/drivers/target/target_core_file.c @@ -169,7 +169,6 @@ static struct se_device *fd_create_virtdevice( inode = file->f_mapping->host; if (S_ISBLK(inode->i_mode)) { struct request_queue *q; - unsigned long long dev_size; /* * Setup the local scope queue_limits from struct request_queue->limits * to pass into transport_add_device_to_core_hba() as struct se_dev_limits. @@ -184,12 +183,13 @@ static struct se_device *fd_create_virtdevice( * one (1) logical sector from underlying struct block_device */ fd_dev->fd_block_size = bdev_logical_block_size(inode->i_bdev); - dev_size = (i_size_read(file->f_mapping->host) - + fd_dev->fd_dev_size = (i_size_read(file->f_mapping->host) - fd_dev->fd_block_size); pr_debug("FILEIO: Using size: %llu bytes from struct" " block_device blocks: %llu logical_block_size: %d\n", - dev_size, div_u64(dev_size, fd_dev->fd_block_size), + fd_dev->fd_dev_size, + div_u64(fd_dev->fd_dev_size, fd_dev->fd_block_size), fd_dev->fd_block_size); } else { if (!(fd_dev->fbd_flags & FBDF_HAS_SIZE)) { @@ -605,20 +605,10 @@ static u32 fd_get_device_type(struct se_device *dev) static sector_t fd_get_blocks(struct se_device *dev) { struct fd_dev *fd_dev = dev->dev_ptr; - struct file *f = fd_dev->fd_file; - struct inode *i = f->f_mapping->host; - unsigned long long dev_size; - /* - * When using a file that references an underlying struct block_device, - * ensure dev_size is always based on the current inode size in order - * to handle underlying block_device resize operations. - */ - if (S_ISBLK(i->i_mode)) - dev_size = (i_size_read(i) - fd_dev->fd_block_size); - else - dev_size = fd_dev->fd_dev_size; + unsigned long long blocks_long = div_u64(fd_dev->fd_dev_size, + dev->se_sub_dev->se_dev_attrib.block_size); - return div_u64(dev_size, dev->se_sub_dev->se_dev_attrib.block_size); + return blocks_long; } static struct se_subsystem_api fileio_template = { diff --git a/trunk/drivers/target/target_core_pr.c b/trunk/drivers/target/target_core_pr.c index c3148b10b4b3..86f0c3b5d500 100644 --- a/trunk/drivers/target/target_core_pr.c +++ b/trunk/drivers/target/target_core_pr.c @@ -220,9 +220,6 @@ int target_scsi2_reservation_release(struct se_task *task) if (dev->dev_reserved_node_acl != sess->se_node_acl) goto out_unlock; - if (dev->dev_res_bin_isid != sess->sess_bin_isid) - goto out_unlock; - dev->dev_reserved_node_acl = NULL; dev->dev_flags &= ~DF_SPC2_RESERVATIONS; if (dev->dev_flags & DF_SPC2_RESERVATIONS_WITH_ISID) { diff --git a/trunk/net/ipv4/tcp.c b/trunk/net/ipv4/tcp.c index 1272a88c2a63..6589e11d57b6 100644 --- a/trunk/net/ipv4/tcp.c +++ b/trunk/net/ipv4/tcp.c @@ -851,8 +851,7 @@ static ssize_t do_tcp_sendpages(struct sock *sk, struct page **pages, int poffse wait_for_sndbuf: set_bit(SOCK_NOSPACE, &sk->sk_socket->flags); wait_for_memory: - if (copied) - tcp_push(sk, flags & ~MSG_MORE, mss_now, TCP_NAGLE_PUSH); + tcp_push(sk, flags & ~MSG_MORE, mss_now, TCP_NAGLE_PUSH); if ((err = sk_stream_wait_memory(sk, &timeo)) != 0) goto do_error;