Changeset 31390


Ignore:
Timestamp:
Feb 14, 2017, 11:39:59 AM (6 months ago)
Author:
brainslayer
Message:

update

Location:
src/linux/universal/linux-4.4
Files:
22 edited

Legend:

Unmodified
Added
Removed
  • src/linux/universal/linux-4.4/Makefile

    r31294 r31390  
    11VERSION = 4
    22PATCHLEVEL = 4
    3 SUBLEVEL = 48
    4 EXTRAVERSION =
     3SUBLEVEL = 49
     4EXTRAVERSION = -rc1
    55NAME = Blurry Fish Butt
    66
  • src/linux/universal/linux-4.4/arch/arc/kernel/unaligned.c

    r31220 r31390  
    244244        /* clear any remanants of delay slot */
    245245        if (delay_mode(regs)) {
    246                 regs->ret = regs->bta ~1U;
     246                regs->ret = regs->bta & ~1U;
    247247                regs->status32 &= ~STATUS_DE_MASK;
    248248        } else {
  • src/linux/universal/linux-4.4/arch/arm/kernel/ptrace.c

    r30018 r31390  
    601601{
    602602        int ret;
    603         struct pt_regs newregs;
     603        struct pt_regs newregs = *task_pt_regs(target);
    604604
    605605        ret = user_regset_copyin(&pos, &count, &kbuf, &ubuf,
  • src/linux/universal/linux-4.4/arch/arm/mm/fault.c

    r28606 r31390  
    611611void __init early_abt_enable(void)
    612612{
    613         fsr_info[22].fn = early_abort_handler;
     613        fsr_info[FSR_FS_AEA].fn = early_abort_handler;
    614614        local_abt_enable();
    615         fsr_info[22].fn = do_bad;
     615        fsr_info[FSR_FS_AEA].fn = do_bad;
    616616}
    617617
  • src/linux/universal/linux-4.4/arch/arm/mm/fault.h

    r28606 r31390  
    1212
    1313#ifdef CONFIG_ARM_LPAE
     14#define FSR_FS_AEA              17
     15
    1416static inline int fsr_fs(unsigned int fsr)
    1517{
     
    1719}
    1820#else
     21#define FSR_FS_AEA              22
     22
    1923static inline int fsr_fs(unsigned int fsr)
    2024{
  • src/linux/universal/linux-4.4/arch/x86/kernel/apic/io_apic.c

    r31294 r31390  
    18761876        .irq_eoi                = ioapic_ack_level,
    18771877        .irq_set_affinity       = ioapic_set_affinity,
    1878         .irq_retrigger          = irq_chip_retrigger_hierarchy,
    18791878        .flags                  = IRQCHIP_SKIP_SET_WAKE,
    18801879};
     
    18881887        .irq_eoi                = ioapic_ir_ack_level,
    18891888        .irq_set_affinity       = ioapic_set_affinity,
    1890         .irq_retrigger          = irq_chip_retrigger_hierarchy,
    18911889        .flags                  = IRQCHIP_SKIP_SET_WAKE,
    18921890};
  • src/linux/universal/linux-4.4/drivers/gpu/drm/i915/intel_display.c

    r30691 r31390  
    39493949
    39503950        wake_up_all(&dev_priv->pending_flip_queue);
    3951         queue_work(dev_priv->wq, &work->work);
    3952 
    39533951        trace_i915_flip_complete(intel_crtc->plane,
    39543952                                 work->pending_flip_obj);
     3953
     3954        queue_work(dev_priv->wq, &work->work);
    39553955}
    39563956
  • src/linux/universal/linux-4.4/drivers/net/ethernet/hisilicon/hns/hns_dsaf_reg.h

    r28606 r31390  
    901901static inline void dsaf_write_reg(void __iomem *base, u32 reg, u32 value)
    902902{
    903         u8 __iomem *reg_addr = ACCESS_ONCE(base);
    904 
    905         writel(value, reg_addr + reg);
     903        writel(value, base + reg);
    906904}
    907905
     
    911909static inline u32 dsaf_read_reg(u8 __iomem *base, u32 reg)
    912910{
    913         u8 __iomem *reg_addr = ACCESS_ONCE(base);
    914 
    915         return readl(reg_addr + reg);
     911        return readl(base + reg);
    916912}
    917913
  • src/linux/universal/linux-4.4/drivers/net/hyperv/netvsc_drv.c

    r31137 r31390  
    855855                goto recover;
    856856        }
    857         netif_set_gso_max_size(net, NETVSC_GSO_MAX_SIZE);
    858857
    859858 out:
     
    11431142        netif_set_real_num_tx_queues(net, nvdev->num_chn);
    11441143        netif_set_real_num_rx_queues(net, nvdev->num_chn);
     1144        netif_set_gso_max_size(net, NETVSC_GSO_MAX_SIZE);
    11451145
    11461146        ret = register_netdev(net);
  • src/linux/universal/linux-4.4/drivers/net/xen-netfront.c

    r28606 r31390  
    13921392                struct netfront_queue *queue = &info->queues[i];
    13931393
     1394                del_timer_sync(&queue->rx_refill_timer);
     1395
    13941396                if (queue->tx_irq && (queue->tx_irq == queue->rx_irq))
    13951397                        unbind_from_irqhandler(queue->tx_irq, queue);
     
    17461748                if (netif_running(info->netdev))
    17471749                        napi_disable(&queue->napi);
    1748                 del_timer_sync(&queue->rx_refill_timer);
    17491750                netif_napi_del(&queue->napi);
    17501751        }
  • src/linux/universal/linux-4.4/drivers/s390/scsi/zfcp_fsf.c

    r30802 r31390  
    15841584{
    15851585        struct zfcp_qdio *qdio = wka_port->adapter->qdio;
    1586         struct zfcp_fsf_req *req = NULL;
     1586        struct zfcp_fsf_req *req;
    15871587        int retval = -EIO;
    15881588
     
    16131613out:
    16141614        spin_unlock_irq(&qdio->req_q_lock);
    1615         if (req && !IS_ERR(req))
     1615        if (!retval)
    16161616                zfcp_dbf_rec_run_wka("fsowp_1", wka_port, req->req_id);
    16171617        return retval;
     
    16391639{
    16401640        struct zfcp_qdio *qdio = wka_port->adapter->qdio;
    1641         struct zfcp_fsf_req *req = NULL;
     1641        struct zfcp_fsf_req *req;
    16421642        int retval = -EIO;
    16431643
     
    16681668out:
    16691669        spin_unlock_irq(&qdio->req_q_lock);
    1670         if (req && !IS_ERR(req))
     1670        if (!retval)
    16711671                zfcp_dbf_rec_run_wka("fscwp_1", wka_port, req->req_id);
    16721672        return retval;
  • src/linux/universal/linux-4.4/drivers/scsi/aacraid/comminit.c

    r29846 r31390  
    5151static inline int aac_is_msix_mode(struct aac_dev *dev)
    5252{
    53         u32 status;
    54 
    55         status = src_readl(dev, MUnit.OMR);
     53        u32 status = 0;
     54
     55        if (dev->pdev->device == PMC_DEVICE_S6 ||
     56                dev->pdev->device == PMC_DEVICE_S7 ||
     57                dev->pdev->device == PMC_DEVICE_S8) {
     58                status = src_readl(dev, MUnit.OMR);
     59        }
    5660        return (status & AAC_INT_MODE_MSIX);
    5761}
  • src/linux/universal/linux-4.4/drivers/scsi/mpt3sas/mpt3sas_scsih.c

    r30911 r31390  
    5252#include <linux/delay.h>
    5353#include <linux/pci.h>
     54#include <linux/pci-aspm.h>
    5455#include <linux/interrupt.h>
    5556#include <linux/aer.h>
     
    84848485        switch (hba_mpi_version) {
    84858486        case MPI2_VERSION:
     8487                pci_disable_link_state(pdev, PCIE_LINK_STATE_L0S |
     8488                        PCIE_LINK_STATE_L1 | PCIE_LINK_STATE_CLKPM);
    84868489                /* Use mpt2sas driver host template for SAS 2.0 HBA's */
    84878490                shost = scsi_host_alloc(&mpt2sas_driver_template,
  • src/linux/universal/linux-4.4/drivers/target/target_core_device.c

    r30452 r31390  
    363363                        return -EINVAL;
    364364                }
    365                 BUG_ON(orig->se_lun_acl != NULL);
     365                if (orig->se_lun_acl != NULL) {
     366                        pr_warn_ratelimited("Detected existing explicit"
     367                                " se_lun_acl->se_lun_group reference for %s"
     368                                " mapped_lun: %llu, failing\n",
     369                                 nacl->initiatorname, mapped_lun);
     370                        mutex_unlock(&nacl->lun_entry_mutex);
     371                        kfree(new);
     372                        return -EINVAL;
     373                }
    366374
    367375                rcu_assign_pointer(new->se_lun, lun);
  • src/linux/universal/linux-4.4/drivers/target/target_core_sbc.c

    r30452 r31390  
    443443{
    444444        struct se_device *dev = cmd->se_dev;
     445        sense_reason_t ret = TCM_NO_SENSE;
    445446
    446447        /*
     
    450451         */
    451452        spin_lock_irq(&cmd->t_state_lock);
    452         if ((cmd->transport_state & CMD_T_SENT) && !cmd->scsi_status) {
     453        if (cmd->transport_state & CMD_T_SENT) {
    453454                cmd->se_cmd_flags |= SCF_COMPARE_AND_WRITE_POST;
    454455                *post_ret = 1;
     456
     457                if (cmd->scsi_status == SAM_STAT_CHECK_CONDITION)
     458                        ret = TCM_LOGICAL_UNIT_COMMUNICATION_FAILURE;
    455459        }
    456460        spin_unlock_irq(&cmd->t_state_lock);
     
    462466        up(&dev->caw_sem);
    463467
    464         return TCM_NO_SENSE;
     468        return ret;
    465469}
    466470
  • src/linux/universal/linux-4.4/drivers/target/target_core_transport.c

    r30802 r31390  
    30593059                goto check_stop;
    30603060        }
    3061         cmd->t_state = TRANSPORT_ISTATE_PROCESSING;
    30623061        spin_unlock_irqrestore(&cmd->t_state_lock, flags);
    30633062
     
    30723071{
    30733072        unsigned long flags;
     3073        bool aborted = false;
    30743074
    30753075        spin_lock_irqsave(&cmd->t_state_lock, flags);
    3076         cmd->transport_state |= CMD_T_ACTIVE;
     3076        if (cmd->transport_state & CMD_T_ABORTED) {
     3077                aborted = true;
     3078        } else {
     3079                cmd->t_state = TRANSPORT_ISTATE_PROCESSING;
     3080                cmd->transport_state |= CMD_T_ACTIVE;
     3081        }
    30773082        spin_unlock_irqrestore(&cmd->t_state_lock, flags);
     3083
     3084        if (aborted) {
     3085                pr_warn_ratelimited("handle_tmr caught CMD_T_ABORTED TMR %d"
     3086                        "ref_tag: %llu tag: %llu\n", cmd->se_tmr_req->function,
     3087                        cmd->se_tmr_req->ref_task_tag, cmd->tag);
     3088                transport_cmd_check_stop_to_fabric(cmd);
     3089                return 0;
     3090        }
    30783091
    30793092        INIT_WORK(&cmd->work, target_tmr_work);
  • src/linux/universal/linux-4.4/drivers/target/target_core_xcopy.c

    r30802 r31390  
    837837                ec_cmd->scsi_status = SAM_STAT_CHECK_CONDITION;
    838838        }
    839         target_complete_cmd(ec_cmd, SAM_STAT_CHECK_CONDITION);
     839        target_complete_cmd(ec_cmd, ec_cmd->scsi_status);
    840840}
    841841
  • src/linux/universal/linux-4.4/include/linux/cpumask.h

    r28606 r31390  
    557557                                     struct cpumask *dstp)
    558558{
    559         return bitmap_parse_user(buf, len, cpumask_bits(dstp), nr_cpu_ids);
     559        return bitmap_parse_user(buf, len, cpumask_bits(dstp), nr_cpumask_bits);
    560560}
    561561
     
    572572{
    573573        return bitmap_parselist_user(buf, len, cpumask_bits(dstp),
    574                                      nr_cpu_ids);
     574                                     nr_cpumask_bits);
    575575}
    576576
     
    587587        unsigned int len = nl ? (unsigned int)(nl - buf) : strlen(buf);
    588588
    589         return bitmap_parse(buf, len, cpumask_bits(dstp), nr_cpu_ids);
     589        return bitmap_parse(buf, len, cpumask_bits(dstp), nr_cpumask_bits);
    590590}
    591591
     
    599599static inline int cpulist_parse(const char *buf, struct cpumask *dstp)
    600600{
    601         return bitmap_parselist(buf, cpumask_bits(dstp), nr_cpu_ids);
     601        return bitmap_parselist(buf, cpumask_bits(dstp), nr_cpumask_bits);
    602602}
    603603
  • src/linux/universal/linux-4.4/net/mac80211/mesh.c

    r30317 r31390  
    356356        offset = ieee80211_ie_split_vendor(ifmsh->ie, ifmsh->ie_len, 0);
    357357
    358         if (offset) {
     358        if (offset < ifmsh->ie_len) {
    359359                len = ifmsh->ie_len - offset;
    360360                data = ifmsh->ie + offset;
  • src/linux/universal/linux-4.4/security/selinux/hooks.c

    r28606 r31390  
    56415641
    56425642        /* Obtain a SID for the context, if one was specified. */
    5643         if (size && str[1] && str[1] != '\n') {
     5643        if (size && str[0] && str[0] != '\n') {
    56445644                if (str[size-1] == '\n') {
    56455645                        str[size-1] = 0;
  • src/linux/universal/linux-4.4/sound/core/seq/seq_memory.c

    r29166 r31390  
    420420        unsigned long flags;
    421421        struct snd_seq_event_cell *ptr;
    422         int max_count = 5 * HZ;
    423422
    424423        if (snd_BUG_ON(!pool))
     
    433432                wake_up(&pool->output_sleep);
    434433
    435         while (atomic_read(&pool->counter) > 0) {
    436                 if (max_count == 0) {
    437                         pr_warn("ALSA: snd_seq_pool_done timeout: %d cells remain\n", atomic_read(&pool->counter));
    438                         break;
    439                 }
     434        while (atomic_read(&pool->counter) > 0)
    440435                schedule_timeout_uninterruptible(1);
    441                 max_count--;
    442         }
    443436       
    444437        /* release all resources */
  • src/linux/universal/linux-4.4/sound/core/seq/seq_queue.c

    r28982 r31390  
    182182}
    183183
     184static void queue_use(struct snd_seq_queue *queue, int client, int use);
     185
    184186/* allocate a new queue -
    185187 * return queue index value or negative value for error
     
    193195                return -ENOMEM;
    194196        q->info_flags = info_flags;
     197        queue_use(q, client, 1);
    195198        if (queue_list_add(q) < 0) {
    196199                queue_delete(q);
    197200                return -ENOMEM;
    198201        }
    199         snd_seq_queue_use(q->queue, client, 1); /* use this queue */
    200202        return q->queue;
    201203}
     
    503505}
    504506
    505 
    506 /* use or unuse this queue -
    507  * if it is the first client, starts the timer.
    508  * if it is not longer used by any clients, stop the timer.
    509  */
    510 int snd_seq_queue_use(int queueid, int client, int use)
    511 {
    512         struct snd_seq_queue *queue;
    513 
    514         queue = queueptr(queueid);
    515         if (queue == NULL)
    516                 return -EINVAL;
    517         mutex_lock(&queue->timer_mutex);
     507/* use or unuse this queue */
     508static void queue_use(struct snd_seq_queue *queue, int client, int use)
     509{
    518510        if (use) {
    519511                if (!test_and_set_bit(client, queue->clients_bitmap))
     
    530522                snd_seq_timer_close(queue);
    531523        }
     524}
     525
     526/* use or unuse this queue -
     527 * if it is the first client, starts the timer.
     528 * if it is not longer used by any clients, stop the timer.
     529 */
     530int snd_seq_queue_use(int queueid, int client, int use)
     531{
     532        struct snd_seq_queue *queue;
     533
     534        queue = queueptr(queueid);
     535        if (queue == NULL)
     536                return -EINVAL;
     537        mutex_lock(&queue->timer_mutex);
     538        queue_use(queue, client, use);
    532539        mutex_unlock(&queue->timer_mutex);
    533540        queuefree(queue);
Note: See TracChangeset for help on using the changeset viewer.