aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-10-03net: ethernet: mediatek: mark symbols static where possibleBaoyou Xie1-4/+4
We get 2 warnings when building kernel with W=1: drivers/net/ethernet/mediatek/mtk_eth_soc.c:2041:5: warning: no previous prototype for 'mtk_get_link_ksettings' [-Wmissing-prototypes] drivers/net/ethernet/mediatek/mtk_eth_soc.c:2052:5: warning: no previous prototype for 'mtk_set_link_ksettings' [-Wmissing-prototypes] In fact, these functions are only used in the file in which they are declared and don't need a declaration, but can be made static. So this patch marks these functions with 'static'. Signed-off-by: Baoyou Xie <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2016-10-03cxgb4: mark cxgb_setup_tc() staticBaoyou Xie1-2/+2
We get 1 warning when building kernel with W=1: drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c:2715:5: warning: no previous prototype for 'cxgb_setup_tc' [-Wmissing-prototypes] In fact, this function is only used in the file in which it is declared and don't need a declaration, but can be made static. so this patch marks this function with 'static'. Signed-off-by: Baoyou Xie <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2016-10-02ipv6 addrconf: remove addrconf_sysctl_hop_limit()Maciej Żenczykowski1-17/+14
This is an effective no-op in terms of user observable behaviour. By preventing the overwrite of non-null extra1/extra2 fields in addrconf_sysctl() we can enable the use of proc_dointvec_minmax(). This allows us to eliminate the constant min/max (1..255) trampoline function that is addrconf_sysctl_hop_limit(). This is nice because it simplifies the code, and allows future sysctls with constant min/max limits to also not require trampolines. We still can't eliminate the trampoline for mtu because it isn't actually a constant (it depends on other tunables of the device) and thus requires at-write-time logic to enforce range. Signed-off-by: Maciej Żenczykowski <[email protected]> Acked-by: Erik Kline <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2016-10-02netfilter: bridge: clarify bridge/netfilter messageStefan Agner1-2/+4
When using bridge without bridge netfilter enabled the message displayed is rather confusing and leads to belive that a deprecated feature is in use. Use IS_MODULE to be explicit that the message only affects users which use bridge netfilter as module and reword the message. Signed-off-by: Stefan Agner <[email protected]> Acked-by: Florian Westphal <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2016-10-02Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netDavid S. Miller141-605/+899
Three sets of overlapping changes. Nothing serious. Signed-off-by: David S. Miller <[email protected]>
2016-10-02Linux 4.8Linus Torvalds1-1/+1
2016-10-03Merge branch 'xfs-4.9-log-recovery-fixes' into for-nextDave Chinner13-98/+248
2016-10-03Merge branch 'iomap-4.9-dax' into for-nextDave Chinner13-122/+464
2016-10-03Merge branch 'xfs-4.9-delalloc-rework' into for-nextDave Chinner6-350/+242
2016-10-03Merge branch 'xfs-4.9-reflink-prep' into for-nextDave Chinner20-116/+719
2016-10-03Merge branch 'iomap-4.9-misc-fixes-1' into for-nextDave Chinner2-0/+87
2016-10-03fs: update atime before I/O in generic_file_read_iterChristoph Hellwig1-7/+7
After the call to ->direct_IO the final reference to the file might have been dropped by aio_complete already, and the call to file_accessed might cause a use after free. Instead update the access time before the I/O, similar to how we update the time stamps before writes. Signed-off-by: Christoph Hellwig <[email protected]> Reviewed-by: Dave Chinner <[email protected]> Signed-off-by: Dave Chinner <[email protected]>
2016-10-03xfs: update atime before I/O in xfs_file_dio_aio_readChristoph Hellwig1-1/+2
After the call to __blkdev_direct_IO the final reference to the file might have been dropped by aio_complete already, and the call to file_accessed might cause a use after free. Instead update the access time before the I/O, similar to how we update the time stamps before writes. Signed-off-by: Christoph Hellwig <[email protected]> Reported-and-tested-by: Darrick J. Wong <[email protected]> Reviewed-by: Darrick J. Wong <[email protected]> Signed-off-by: Dave Chinner <[email protected]>
2016-10-03ext2: fix possible integer truncation in ext2_iomap_beginChristoph Hellwig1-1/+1
For 32-bit architectures we need to cast first_block to u64 before shifting it left. Signed-off-by: Christoph Hellwig <[email protected]> Reported-by: Jan Kara <[email protected]> Reviewed-by: Dave Chinner <[email protected]> Signed-off-by: Dave Chinner <[email protected]>
2016-10-02Merge branch 'fixes' of git://git.armlinux.org.uk/~rmk/linux-armLinus Torvalds3-5/+13
Pull ARM fixes from Russell King: "Three relatively small fixes for ARM: - Roger noticed that dma_max_pfn() was calculating the upper limit wrongly, by adding the PFN offset of memory twice. - A fix from Robin to correct parsing of MPIDR values when the address size is larger than one BE32 unit. - A fix from Srinivas to ensure that we do not rely on the boot loader (or previous Linux kernel) setting the translation table base register a certain way in the decompressor, which can lead to crashes" * 'fixes' of git://git.armlinux.org.uk/~rmk/linux-arm: ARM: 8618/1: decompressor: reset ttbcr fields to use TTBR0 on ARMv7 ARM: 8617/1: dma: fix dma_max_pfn() ARM: 8616/1: dt: Respect property size when parsing CPUs
2016-10-02ARM: 8618/1: decompressor: reset ttbcr fields to use TTBR0 on ARMv7Srinivas Ramana1-1/+1
If the bootloader uses the long descriptor format and jumps to kernel decompressor code, TTBCR may not be in a right state. Before enabling the MMU, it is required to clear the TTBCR.PD0 field to use TTBR0 for translation table walks. The commit dbece45894d3a ("ARM: 7501/1: decompressor: reset ttbcr for VMSA ARMv7 cores") does the reset of TTBCR.N, but doesn't consider all the bits for the size of TTBCR.N. Clear TTBCR.PD0 field and reset all the three bits of TTBCR.N to indicate the use of TTBR0 and the correct base address width. Fixes: dbece45894d3 ("ARM: 7501/1: decompressor: reset ttbcr for VMSA ARMv7 cores") Acked-by: Robin Murphy <[email protected]> Signed-off-by: Srinivas Ramana <[email protected]> Signed-off-by: Russell King <[email protected]>
2016-10-02Merge branch 'x86-urgent-for-linus' of ↵Linus Torvalds5-19/+16
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip Pull x86 fixes from Thomas Gleixner: "The last regression fixes for 4.8 final: - Two patches addressing the fallout of the CR4 optimizations which caused CR4-less machines to fail. - Fix the VDSO build on big endian machines - Take care of FPU initialization if no CPUID is available otherwise task struct size ends up being zero - Fix up context tracking in case load_gs_index fails" * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86/entry/64: Fix context tracking state warning when load_gs_index fails x86/boot: Initialize FPU and X86_FEATURE_ALWAYS even if we don't have CPUID x86/vdso: Fix building on big endian host x86/boot: Fix another __read_cr4() case on 486 x86/init: Fix cr4_init_shadow() on CR4-less machines
2016-10-02Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linusLinus Torvalds12-55/+101
Pull MIPS fixes from Ralf Baechle: "Another round of fixes: - CM: Fix mips_cm_max_vp_width for non-MT kernels on MT systems - CPS: Avoid BUG() when offlining pre-r6 CPUs - DEC: Avoid gas warnings due to suspicious instruction scheduling by manually expanding assembler macros. - FTLB: Fix configuration by moving confiuguratoin after probing - FTLB: clear execution hazard after changing FTLB enable - Highmem: Fix detection of unsupported highmem with cache aliases - I6400: Don't touch FTLBP chicken bits - microMIPS: Fix BUILD_ROLLBACK_PROLOGUE - Malta: Fix IOCU disable switch read for MIPS64 - Octeon: Fix probing of devices attached to GPIO lines - uprobes: Misc small fixes" * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: MIPS: CM: Fix mips_cm_max_vp_width for non-MT kernels on MT systems MIPS: Fix detection of unsupported highmem with cache aliases MIPS: Malta: Fix IOCU disable switch read for MIPS64 MIPS: Fix BUILD_ROLLBACK_PROLOGUE for microMIPS MIPS: clear execution hazard after changing FTLB enable MIPS: Configure FTLB after probing TLB sizes from config4 MIPS: Stop setting I6400 FTLBP MIPS: DEC: Avoid la pseudo-instruction in delay slots MIPS: Octeon: mark GPIO controller node not populated after IRQ init. MIPS: uprobes: fix use of uninitialised variable MIPS: uprobes: remove incorrect set_orig_insn MIPS: fix uretprobe implementation MIPS: smp-cps: Avoid BUG() when offlining pre-r6 CPUs
2016-10-02Staging: fbtft: Fix bug in fbtft-coreKsenija Stanojevic1-2/+2
Commit 367e8560e8d7a62d96e9b1d644028a3816e04206 introduced a bug in fbtft-core where fps is always 0, this is because variable update_time is not assigned correctly. Signed-off-by: Ksenija Stanojevic <[email protected]> Fixes: 367e8560e8d7 ("Staging: fbtbt: Replace timespec with ktime_t") Cc: stable <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparcLinus Torvalds8-29/+90
Pull sparc fixes from David Miller: 1) Fix section mismatches in some builds, from Paul Gortmaker. 2) Need to count huge zero page mappings when doing TSB sizing, from Mike Kravetz. 3) Fix handing of cpu_possible_mask when nr_cpus module option is specified, from Atish Patra. 4) Don't allocate irq stacks until nr_irqs has been processed, also from Atish Patra. * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc: sparc64: Fix non-SMP build. sparc64: Fix irq stack bootmem allocation. sparc64: Fix cpu_possible_mask if nr_cpus is set sparc64 mm: Fix more TSB sizing issues sparc64: fix section mismatch in find_numa_latencies_for_group
2016-10-02Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netLinus Torvalds26-127/+171
Pull networking fixes from David Miller: 1) Fix wrong TCP checksums on MTU probing when checksum offloading is disabled, from Douglas Caetano dos Santos. 2) Fix qdisc backlog updates in qfq and sfb schedulers, from Cong Wang. 3) Route lookup flow key protocol value is wrong in ip6gre_xmit_other(), fix from Lance Richardson. 4) Scheduling while atomic in multicast routing code of ipv4 and ipv6, fix from Nikolay Aleksandrov. 5) Fix packet alignment in fec driver, from Eric Nelson. 6) Fix perf regression in sctp due to struct layout and cache misses, from Xin Long. * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: sctp: fix the issue sctp_diag uses lock_sock in rcu_read_lock sctp: change to check peer prsctp_capable when using prsctp polices sctp: remove prsctp_param from sctp_chunk sctp: move sent_count to the memory hole in sctp_chunk tg3: Avoid NULL pointer dereference in tg3_io_error_detected() act_ife: Fix false encoding act_ife: Fix external mac header on encode VSOCK: Don't dec ack backlog twice for rejected connections Revert "net: ethernet: bcmgenet: use phydev from struct net_device" net: fec: align IP header in hardware net: fec: remove QUIRK_HAS_RACC from i.mx27 net: fec: remove QUIRK_HAS_RACC from i.mx25 ipmr, ip6mr: fix scheduling while atomic and a deadlock with ipmr_get_route ip6_gre: fix flowi6_proto value in ip6gre_xmit_other() tcp: fix a compile error in DBGUNDO() tcp: fix wrong checksum calculation on MTU probing sch_sfb: keep backlog updated with qlen sch_qfq: keep backlog updated with qlen can: dev: fix deadlock reported after bus-off
2016-10-02staging: rtl8188eu: fix double unlock error in rtw_resume_process()Wei Yongjun1-4/+4
Fix following static checker warning: drivers/staging/rtl8188eu/os_dep/usb_intf.c:311 rtw_resume_process() error: double unlock 'mutex:&pwrpriv->mutex_lock' Fixes: eaf47b713b60 ("staging: rtl8188eu: fix missing unlock on error in rtw_resume_process()") Reported-By: Dan Carpenter <[email protected]> Signed-off-by: Wei Yongjun <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging:r8188eu: remove GEN_MLME_EXT_HANDLER macroIvan Safonov1-17/+15
GEN_MLME_EXT_HANDLER is redundant macro. Signed-off-by: Ivan Safonov <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging:r8188eu: remove GEN_DRV_CMD_HANDLER macroIvan Safonov1-1/+0
This macro does not used. Signed-off-by: Ivan Safonov <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging:r8188eu: remove GEN_EVT_CODE macroIvan Safonov3-33/+31
GEN_EVT_CODE is redundant macro. Signed-off-by: Ivan Safonov <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging:r8188eu: remove GEN_CMD_CODE macroIvan Safonov3-51/+49
GEN_CMD_CODE is redundant macro. Signed-off-by: Ivan Safonov <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging:r8188eu: remove pkt_newalloc member of the recv_buf structureIvan Safonov2-2/+0
This member does not used. Signed-off-by: Ivan Safonov <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging:r8188eu: remove rtw_handle_dualmac declarationIvan Safonov1-2/+0
It is a declaration of the non-existent function. Signed-off-by: Ivan Safonov <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging:r8188eu: remove (RGTRY|BSSID)_(OFT|SZ) macrosIvan Safonov1-6/+0
These macros does not used. Signed-off-by: Ivan Safonov <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging:r8188eu: change rtl8188e_process_phy_info function argument typeIvan Safonov2-4/+4
prframe is (void *), but function used only with (struct recv_frame *). Signed-off-by: Ivan Safonov <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02Staging: fsl-mc: Remove blank linesRamiro Oliveira2-2/+0
Remove multiple blank lines as reported by checkpatch Signed-off-by: Ramiro Oliveira <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02Staging: fsl-mc: Fix unaligned * in block commentsRamiro Oliveira5-136/+136
Align the * in some block comments as reported by checkpatch. Signed-off-by: Ramiro Oliveira <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02Staging: comedi: Align the * in block commentsRamiro Oliveira1-1/+1
Align the * on each line of block comments as reported by checkpatch Signed-off-by: Ramiro Oliveira <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02Staging : ks7010 : Fix block comments warninigMuraru Mihaela1-8/+16
Move final */ to a new line, to conform to the kernel coding style for block comments. Issue found by checkpatch. Signed-off-by: Muraru Mihaela <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02Staging: vt6655: Remove explicit NULL comparison using Coccinelleshyam saini1-4/+4
Remove the explicit NULL comparison and rewrite in a compact form. Signed-off-by: shyam saini <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging: rtl8188eu: core: rtw_xmit: Use macros instead of constantsGeorgiana Rodica Chelu2-7/+7
Replace the 0x888e with ETH_P_PAE and 0x0806 with ETH_P_ARP. These macros can be found in drivers/staging/rtl8192e/rtllib.h Hexadecimal numbers are not case sensitive, therefore 0x888e is equal with 0x888E. The modifications improve the readability of the code. Signed-off-by: Georgiana Rodica Chelu <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging: rtl8188eu: core: rtw_xmit: Move constant of the right sideGeorgiana Rodica Chelu1-3/+3
Constants should be on the right side of comparisons. Issue found by checkpatch.pl script. Signed-off-by: Georgiana Rodica Chelu <[email protected]> Acked-by: Julia Lawall <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging: dgnc: Fix lines longer than 80 charactersFernando Apesteguia1-21/+46
All the chunks of the patch apply to comments save the first one. Signed-off-by: Fernando Apesteguia <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02Staging: dgnc: constify attribute_group structuresBhumika Goyal1-1/+1
Check for attribute_group structures that are only passed as a second argument to the functions sysfs_remove_group and sysfs_create_group. As these arguments are constant so, attribute_group structures having this property can also be made constant. Done using coccinelle: @r1 disable optional_qualifier @ identifier i; position p; @@ static struct attribute_group i@p = {...}; @ok1@ identifier r1.i; position p; expression e1; @@ ( sysfs_remove_group(e1,&i@p) | sysfs_create_group(e1,&i@p) ) @bad@ position p!={r1.p,ok1.p}; identifier r1.i; @@ i@p @depends on !bad disable optional_qualifier@ identifier r1.i; @@ static +const struct attribute_group i={...}; @depends on !bad disable optional_qualifier@ identifier r1.i; @@ +const struct attribute_group i; File size before: text data bss dec hex filename 6248 1024 0 7272 1c68 drivers/staging/dgnc/dgnc_sysfs.o File size after: text data bss dec hex filename 6288 960 0 7248 1c50 drivers/staging/dgnc/dgnc_sysfs.o Signed-off-by: Bhumika Goyal <[email protected]> Acked-by: Julia Lawall <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02Staging: most: hdm-dim2: constify attribute_group structuresBhumika Goyal1-1/+1
Check for attribute_group structures that are only passed as a second argument to the functions sysfs_remove_group and sysfs_create_group. As these arguments are constant so, attribute_group structures having this property can also be made constant. Done using coccinelle: @r1 disable optional_qualifier @ identifier i; position p; @@ static struct attribute_group i@p = {...}; @ok1@ identifier r1.i; position p; expression e1,e2; @@ ( sysfs_remove_group(e1,&i@p) | sysfs_create_group(e1,&i@p) ) @bad@ position p!={r1.p,ok1.p}; identifier r1.i; @@ i@p @depends on !bad disable optional_qualifier@ identifier r1.i; @@ static +const struct attribute_group i={...}; @depends on !bad disable optional_qualifier@ identifier r1.i; @@ +const struct attribute_group i; File size before: text data bss dec hex filename 509 160 0 669 29d drivers/staging/most/hdm-dim2/dim2_sysfs.o File size after: text data bss dec hex filename 565 96 0 661 295 drivers/staging/most/hdm-dim2/dim2_sysfs.o Signed-off-by: Bhumika Goyal <[email protected]> Acked-by: Julia Lawall <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging: wilc1000: remove unnecessary bracesElizabeth Ferdman1-2/+2
Fix checkpatch warning "braces {} are not necessary for single statement blocks" to conform to linux kernel coding style. Signed-off-by: Elizabeth Ferdman <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging: wilc1000: wilc_spi: Remove unnecessary blank linesNamrata A Shettar1-10/+0
Remove unnecessary blank lines to resolve checkpatch issue. Signed-off-by: Namrata A Shettar <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging: wilc1000: wilc_spi: Compress return logicNamrata A Shettar1-12/+6
Compress return logic. Done using Coccinelle : @@ local idexpression ret; expression e; @@ -ret= +return e; -return ret; Signed-off-by: Namrata A Shettar <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging: wilc1000: wilc_wlan: Compress return logicNamrata A Shettar1-4/+2
Compress return logic. Done using Coccinelle : @@ local idexpression ret; expression e; @@ -ret= +return e; -return ret; Signed-off-by: Namrata A Shettar <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging: fbtft: fix NULL comparison checkpatch warningCarlos Palminha1-2/+2
Fixed the following checkpatch warnings (task #10 of eudyptula challenge): - NULL comparison rewritten to use '!' operator Signed-off-by: Carlos Palminha <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02Staging: rts5208: Fix indentation warningsWayne Porter1-13/+13
Fix code indentation warnings detected by checkpatch.pl Signed-off-by: Wayne Porter <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging: rts5208: Replace explicit NULL comparisonNamrata A Shettar1-1/+1
Replace explicit NULL comparison to resolve checkpatch issues. Signed-off-by: Namrata A Shettar <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging: rts5208: Add space around binary operatorsNamrata A Shettar1-10/+10
Add space around binary operators to resolve checkpatch issue. Signed-off-by: Namrata A Shettar <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02Staging: speakup: constify attribute_group structuresBhumika Goyal1-2/+2
Check for attribute_group structures that are only passed as a second argument to the functions sysfs_remove_group and sysfs_create_group. As these arguments are constant so, attribute_group structures having this property can also be made constant. Done using coccinelle: @r1 disable optional_qualifier @ identifier i; position p; @@ static struct attribute_group i@p = {...}; @ok1@ identifier r1.i; position p; expression e1; @@ ( sysfs_remove_group(e1,&i@p) | sysfs_create_group(e1,&i@p) ) @bad@ position p!={r1.p,ok1.p}; identifier r1.i; @@ i@p @depends on !bad disable optional_qualifier@ identifier r1.i; @@ static +const struct attribute_group i={...}; @depends on !bad disable optional_qualifier@ identifier r1.i; @@ +const struct attribute_group i; File size before: text data bss dec hex filename 7551 1440 16 9007 232f drivers/staging/speakup/kobjects.o File size after: text data bss dec hex filename 7671 1312 16 8999 2327 drivers/staging/speakup/kobjects.o Signed-off-by: Bhumika Goyal <[email protected]> Acked-by: Samuel Thibault <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2016-10-02staging: wlang-ng: Fix block comments style warnings in hfa384x.hSergio Paracuellos1-62/+62
This patch fixes the following checkpatch.pl warning in hfa384x.h: WARNING: Block comments use * on subsequent lines No more warnings block comments warnings for this file. Signed-off-by: Sergio Paracuellos <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>